Welcome! Log In Create A New Profile

Advanced

Re: Непонятна работа limit_rate

Иван Мишин
October 07, 2020 11:08AM
При директивах

вт, 6 окт. 2020 г. в 17:16, Maxim Dounin <mdounin@mdounin.ru>:

> Hello!
>
> On Tue, Oct 06, 2020 at 10:42:47AM +0300, Evgeniy Berdnikov wrote:
>
> > On Mon, Oct 05, 2020 at 10:24:17PM +0300, Alexey wrote:
> > > День добрый!
> > >
> > > Вы качаете файл, получаемых от прокси апстрима?
> > >
> https://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_max_temp_file_size
> > >
> > > Вы упираетесь в 1Гб временного файла. когда качается быстро, он
> > > вообще в темп не пишется, если файл прилетает от апстрима быстрее
> > > чем забираем, то он уже пишется во временный файл. вы успеваете
> > > скачать столько, сколько прилетает до начала записи во временный
> > > файл + макс размер файла.
> >
> > Наличие лимита на размер временного файла это что, повод обрывать
> закачку?
>
> Наличие лимита - ни разу не повод обрывать закачку, nginx её и не
> обрывает.
>
> Другой вопрос, что если буфер забит - nginx'у некуда читать
> дополнительные данные, и в результате бэкенд может закрыть
> соединение по таймауту до того, как содержимое временного файла
> будет отдано клиену и соответственно nginx сможет дальше читать
> что-либо от бэкенда.
>
> При заявленном ограничении скорости в 2 мегабайта в секунду -
> отправка клиенту гигабайта временных данных займёт секунд 500
> минимум. Если при этом с бэкенда эти данные летят по гигабитному
> каналу со скоростью 100 мегабайт в секунду - прилетят они секунд за
> 10. То есть между nginx'ом и бэкендом 490 секунд ничего не будет
> происходить. Шансов на то, что бэкенд дождётся при настройках по
> умолчанию - никаких.
>
> Соответственно нужно:
>
> - увеличить временный файл, чтобы ответы влезали;
>
> - или уменьшить временный файл, чтобы его содержимое могло
> отправиться до того, как сработает таймаут на бэкенде.
>
> Ну либо настраивать таймауты на бэкенде и/или ограничение
> скорости, чтобы опять же временный файл мог отправиться до того,
> как сработает таймаут на бэкенде.
>
> Вообще, когда речь идёт о том, что проксируются большие файлы -
> одним из лучших решений может быть просто выключенная буферизация
> на диск, "proxy_max_temp_file_size 0;". Это позволяет избежать не
> только проблем с таймаутами на бэкенде, но и траты ресурсов на
> disk i/o, а равно проблем с переполнением диска под временные
> файлы при большом количестве одновременных запросов.
>
> [...]
>
> --
> Maxim Dounin
> http://mdounin.ru/
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Непонятна работа limit_rate

Иван Мишин October 05, 2020 12:50PM

Re: Непонятна работа limit_rate

Иван Мишин October 05, 2020 01:18PM

Re: Непонятна работа limit_rate

ngnx8810773a83 October 05, 2020 03:26PM

Re: Непонятна работа limit_rate

Evgeniy Berdnikov October 06, 2020 03:44AM

Re: Непонятна работа limit_rate

Илья Шипицин October 06, 2020 06:22AM

Re: Непонятна работа limit_rate

Evgeniy Berdnikov October 06, 2020 06:46AM

Re: Непонятна работа limit_rate

Илья Шипицин October 06, 2020 07:12AM

Re: Непонятна работа limit_rate

Evgeniy Berdnikov October 06, 2020 07:36AM

Re: Непонятна работа limit_rate

Илья Шипицин October 06, 2020 07:58AM

Re: Непонятна работа limit_rate

Maxim Dounin October 06, 2020 10:18AM

Re: Непонятна работа limit_rate

Иван Мишин October 07, 2020 11:08AM

Re: Непонятна работа limit_rate

Иван Мишин October 07, 2020 11:12AM

Re: Непонятна работа limit_rate

Evgeniy Berdnikov October 07, 2020 11:24AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 242
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready