ssl_buffer_size
Директива `ssl_buffer_size` задаёт размер буфера, используемого для чтения данных SSL. — NGINX HTTP Core
Описание
Директива `ssl_buffer_size` в NGINX определяет размер буфера, выделяемого для чтения сообщений SSL-рукопожатия. Этот размер буфера влияет на приём данных SSL как во время рукопожатия, так и при передаче данных. По умолчанию NGINX позволяет размеру буфера динамически подстраиваться под потребности конкретной используемой SSL-библиотеки, но его можно явно задать для оптимизации или для обеспечения определённого поведения сервера. При использовании директивы указывается размер буфера, который должен соответствовать ожидаемому размеру для вашего сценария использования. Установка этого значения слишком малого может привести к проблемам с производительностью или неправильной обработке крупных сообщений, тогда как чрезмерно большое значение может приводить к расточительному использованию памяти. Это значение используется внутренне NGINX во время фазы SSL-рукопожатия — когда согласовываются защищённые соединения — и в процессе фактической передачи данных по TLS, влияя таким образом на общую эффективность SSL-операций. Директиву можно размещать как в контексте http, так и в контексте server, что даёт гибкость в определении размеров буферов на разных уровнях конфигурации NGINX. Для серверов, обрабатывающих большие объёмы SSL-трафика, тонкая настройка `ssl_buffer_size` может привести к улучшению производительности и снижению задержек.
Пример конфига
http {
ssl_buffer_size 16k;
}
server {
listen 443 ssl;
ssl_buffer_size 8k;
}
Убедитесь, что размер буфера соответствует ожидаемому максимальному размеру SSL-записи, чтобы избежать усечения сообщений.
Будьте осторожны при установке очень высоких значений, так как это может привести к ненужному использованию памяти. Если ваш сервер обрабатывает много соединений, следует сбалансировать эту настройку.