ср, 13 июл. 2022 г. в 00:16, Gena Makhomed <g...@csdoc.com>: > On 12.07.2022 20:12, Илья Шипицин wrote: > > >> и еще примерно 20% - это "предупреждения" о том, что > >> a client request body is buffered to a temporary file > > > это же можно выключить через proxy_request_buffering ? > > Да, в моем случае - это вполне подходит, спасибо. > > proxy_http_version 1.1; > proxy_request_buffering off; > > Потому что у меня у каждого nginx frontend > есть всего один nginx backend для каждого сайта: > nginx frontend <=> nginx backend <=> php-fpm > > Самое главное - не забыть включить директиву proxy_http_version 1.1; > на nginx frontend, иначе будут проблемы из-за использования HTTP/1.0 > > > https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_request_buffering > > When HTTP/1.1 chunked transfer encoding is used to send the original > request body, the request body will be buffered regardless of the > directive value unless HTTP/1.1 is enabled for proxying. >
HTTP/1.1 обычно включаю, но до этого места в документации про chunked не дочитал )) > > >> Еще - было бы очень хорошо, чтобы nginx умел писать логи на диск > >> не до тех пор, пока там останется 0 байт свободного места, а хотя > >> бы оставлял 1 гигабайт для файлов в /var/cache/nginx/client_temp > > > буферизация на диск имеет кучу побочных эффектов. > > можно через Модуль ngx_http_proxy_module (nginx.org) > > < > https://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_max_temp_file_size > > > > выключить дисковую часть (оставив буферизацию в памяти) > > Директива proxy_max_temp_file_size 0; на nginx frontend у меня прописана > Но она влияет только на буферизацию проксируемых от backend`ов ответов. > > Полностью отключить использование диска nginx frontend > для проксирования и запросов и ответов можно > с помощью такого набора директив: > > proxy_http_version 1.1; > proxy_request_buffering off; > proxy_max_temp_file_size 0; > не совсем верно. если не трогать proxy_buffering, то ответы буферизуются (в памяти, но не на диске) > > Однако это имеет смысл только в том случае, если nginx frontend > проксирует запросы на nginx backend, на котором включена буферизация если у бекенда форк-модель, и дорогое подключение, которое желательно максимально быстро освободить, даже ценой буферизации на диск, то да. для многих современных бекендов, включач php-fpm, поддержание 10к одновременных подключений не является проблемой, кажется, что буферизация на диск скорее избыточна, и по факту не решает никаких проблем, но может их создать > > запросов и ответов на диск. Если в качестве backend`а используется > httpd apache - использование диска для буферизации > наверное лучше будет не выключать. > верно > > -- > Best regards, > Gena > _______________________________________________ > nginx-ru mailing list -- nginx-ru@nginx.org > To unsubscribe send an email to nginx-ru-le...@nginx.org >
_______________________________________________ nginx-ru mailing list -- nginx-ru@nginx.org To unsubscribe send an email to nginx-ru-le...@nginx.org