> > В данном случае хороший ответ на этот вопрос не прослеживается, > так как автотюнинг буферов сейчас во всех популярных операционных > системах есть, в том числе на линуксе. >
Автотюнинг буферов - это что именно? Есть sysctl net.ipv4.tcp_wmem с тремя значениями: минимально разрешенное, по умолчанию, максимально разрешенное. Но устанавливать значение, отличное от дефолтного, всё равно должен пользовательский процесс через setsockopt(SO_SNDBUF), ядро его никогда не пытается менять автоматически. > > И не совсем понятно, зачем пытаться изобретать свой собственный. > Сейчас получается два цикла отправки - внутри ядра, и когда\если ядерный буфер переполнен, то внутри Nginx'a вокруг EAGAIN. Когда Nginx попадает в такой цикл, резко взлетают CPU Usage и Load Average. Если Nginx в этой ситуации просто увеличит системный буфер, чтобы ответ поместился в него целиком, то всю работу по отправке возьмёт на себя ядро, а Nginx сможет об этом просто забыть. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,274966,274985#msg-274985 _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
