<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">вт, 6 окт. 2020 г. в 12:43, Evgeniy Berdnikov <<a href="mailto:bgx@protva.ru">bgx@protva.ru</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, Oct 05, 2020 at 10:24:17PM +0300, Alexey wrote:<br>
> День добрый!<br>
> <br>
> Вы качаете файл, получаемых от прокси апстрима?<br>
> <a href="https://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_max_temp_file_size" rel="noreferrer" target="_blank">https://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_max_temp_file_size</a><br>
> <br>
> Вы упираетесь в 1Гб временного файла. когда качается быстро, он<br>
> вообще в темп не пишется, если файл прилетает от апстрима быстрее<br>
> чем забираем, то он уже пишется во временный файл. вы успеваете<br>
> скачать столько, сколько прилетает до начала записи во временный<br>
> файл + макс размер файла.<br>
<br>
 Наличие лимита на размер временного файла это что, повод обрывать закачку?<br></blockquote><div><br></div><div>вы отдаете проксируемый контент по мере чтения.</div><div>статус 200 вы отдаете практически сразу. <br></div><div>поэтому клиент видит 200.</div><div><br></div><div>потом вы начинаете вычитывать ответ, и постепенно отдавать клиенту.</div><div><br></div><div>это регулируется (на выбор)</div><div><br></div><div>proxy_buffering (по умолчанию включено)</div><div>X-Accel-Buffering (можно отдать с апстрима)</div><div>proxy_max_temp_file_size (по  умолчанию 1Гб)</div><div><br></div><div>если вы с апстрима вычитываете на wire speed, а отдаете в узную дырочку, то все шансы, что ответ попытается сбуферизоваться.</div><div>и это у него получится вплоть до размера 1Гб</div><div><br></div><div>а дальше - вы уже отдали (в сторону клиента) 200. поменять уже не можете. <br></div><div><br></div><div><br></div><div>это дефолтные настройки. их не меняют с целью сохранения совместимости (вдруг кто-то от них зависит).</div><div>предполагается ответственный подход. если вы несчастливы с дефолтными настройками - читаете документацию, меняете на нужные.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
 Я бы предложил начать с wget -d.<br>
<br>
> 05.10.2020 20:16, Иван Мишин пишет:<br>
> >Забыл уточнить, что при обрыве в акцес логах все равно значится<br>
> >200 код, а в ерор логах пусто.<br>
> ><br>
> >пн, 5 окт. 2020 г. в 19:47, Иван Мишин <<a href="mailto:simplebox66@gmail.com" target="_blank">simplebox66@gmail.com</a><br>
> ><mailto:<a href="mailto:simplebox66@gmail.com" target="_blank">simplebox66@gmail.com</a>>>:<br>
> ><br>
> >    Добрый день!<br>
> >    Есть локейшн с настроенными вот такими директивами:<br>
> >      limit_rate_after 150000k; #150Mb<br>
> >      limit_rate 2048k;<br>
> ><br>
> >    Пробую качать с помощью wget большой файл, и примерно через 7<br>
> >    минут 49-55 секунд закачка обрывается ну и соответственно объем<br>
> >    (1.1Гб) скачанных данных в зависимости от времени слегка разный.<br>
> >    Как только убирают указанные выше две директивы, так все логично<br>
> >    быстро качается и самое главное без обрыва , качается целиком.<br>
> >    А проблема заключается в том что указанными директивами я лишь<br>
> >    хотел подрезать скорость, но не понятно почему при этом файл не<br>
> >    скачивается до конца! До 1.1Гб файлы скачиваются нормально, а<br>
> >    больше уже нет. Хотел было грешить на таймауты какие-нибудь, но<br>
> >    время обрыва хоть и примерно одинаковое, но все же не постоянное,<br>
> >    поэтому идею с таймаутами отбросил.<br>
> ><br>
> >    Прошу подсказать как решить проблему?<br>
> ><br>
-- <br>
 Eugene Berdnikov<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></blockquote></div></div>