Валентин Бартенев Wrote: ------------------------------------------------------- > On Wednesday 11 May 2016 10:06:58 AterCattus wrote: > > Валентин Бартенев Wrote: > > ------------------------------------------------------- > > > On Wednesday 11 May 2016 09:55:40 AterCattus wrote: > > > > Да, конечно. За эти 2ГБ полезной нагрузки успевает выполнится > пачка > > > > последовательных запросов (т.е. nginx присылает все > соответствующие > > > HEADERS > > > > и DATA фреймы). Не говоря уже про обмен SETTINGS. > > > > > > > [..] > > > > > > Так пришлось сделать из-за славного браузера Chrome, подробности: > > > http://hg.nginx.org/nginx/rev/8df664ebe037 > > > > > > На самом деле не только Chrome этим грешит, но и MS IE/Edge, > Safari. > > > > > > У вас какой-то свой клиент? > > > > > > -- > > > Валентин Бартенев > > > _______________________________________________ > > > nginx-ru mailing list > > > nginx-ru@nginx.org > > > http://mailman.nginx.org/mailman/listinfo/nginx-ru > > > > Да, я видел фикс для (RST_STREAM, NO_ERROR). Надеялся, что хоть по > > превышению 2Г nginx отдаст еще 2Г в window_update, но нет. > > Выходит, единственное решение - это по истечению окна > переподключаться? > > > > Клиент свой самописный, да. > > > > Уточню, речь идет ведь об окне на stream? Или на соединение? > > Окно на соединение сейчас всегда поддерживается максимальным > и window_update на него должны ходить по условию: > > if (h2c->recv_window < NGX_HTTP_V2_MAX_WINDOW / 4) { > > if (ngx_http_v2_send_window_update(h2c, 0, > NGX_HTTP_V2_MAX_WINDOW > - h2c->recv_window) > == NGX_ERROR) > { > return ngx_http_v2_connection_error(h2c, > > NGX_HTTP_V2_INTERNAL_ERROR); > } > > h2c->recv_window = NGX_HTTP_V2_MAX_WINDOW; > } > > -- > Валентин Бартенев > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru
Речь про окно на соединение. Я не тестил на стримах в 2ГБ (только стримы на несколько мегабайт с суммарным трафиком на соединение в 2-3ГБ), хотя сделаю сейчас для полноты картины. Проблема в том, что UPDATE_WINDOW вообще больше никакой не присылается после первоначального обмена фреймами. Тест на 2ГБ занимает десятки секунд, flow window соединения за это время уходит в минус, но nginx не присылает обновления окна. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,266812,266824#msg-266824 _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru