Nginx reverse proxy: Какое влияние proxy_buffering на производительность на больших файлах и медленном апстриме?

Документация говорит о том, что когда proxy_buffering выключен - клиентам высылается ответ от бакенд-сервера одновременно с его получением, а когда включен - ответ вычитывается в буферы, и при необходимости пишется в файл, и только потом отправляется клиенту.

В случае, если у нас "медленный, но большой" бакенд (большое хранилище на обычных дисках) - хочется конечно отдавать клиенту данные одновременно с получением, чтобы минимизировать задержку для клиента.

Однако на практике при тестировании на 100Мб файлах и медленной сети (2мб/сек и бакенд, и клиенты)- возникает ощущение, что nginx сливает данные клиенту по мере загрузки с бакенда даже при включенном proxy_buffering.

Тут неточность в документации, или поведение nginx более сложное? Правильно ли я понимаю, что если nginx начинает отдавать данные клиентам сразу, то выключать proxy_buffering смысла нет?
  • Вопрос задан
  • 437 просмотров
Пригласить эксперта
Ответы на вопрос 1
@ProFfeSsoRr
Сис.админ по Linux
Буферы ж не 100Мб, он заполнил буфер - и отправляет его, а пока заполняет следующий. Смотри документацию nginx по proxy_buffering и ниже опции читай, там и количество и размер буферов задавать можно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы