Который является лучшей конфигурацией/оптимизацией: явно ограничить keepalive_timeout
или позволить Nginx уничтожать соединения проверки активности самостоятельно?
Я посмотрел две конфликтующих рекомендации относительно keepalive_timeout
директива для Nginx. Они следующие:
# How long to allow each connection to stay idle; longer values are better
# for each individual client, particularly for SSL, but means that worker
# connections are tied up longer. (Default: 65)
keepalive_timeout 20;
и
# You should remove keepalive_timeout from your formula.
# Nginx closes keepalive connections when the
# worker_connections limit is reached.
Nginx документация для keepalive_timeout
не упоминает об автоматическом уничтожении, и я только видел эту рекомендацию однажды, но это заинтриговывает меня.
Этот сервер служит исключительно защищенным соединениям TLS, и все незашифрованные соединения сразу перенаправлены к https://
версия того же URL.
Nginx закрывает keepalive-соединение при достижении лимита work_connections.
Это верно.
ngx_drain_connections();
ngx_reusable_connection(c, 1);