grpc_ssl_session_reuse
Включает или отключивает повторное использование SSL-сессий для gRPC-соединений в NGINX. — NGINX HTTP Core
Описание
Директива `grpc_ssl_session_reuse` настраивает повторное использование SSL-сессий для gRPC-соединений, устанавливаемых через сервер NGINX. Она принимает логическое значение; при включении gRPC-клиенты могут повторно использовать существующие SSL-сессии для установления новых соединений, что оптимизирует использование ресурсов и повышает производительность. Когда эта директива установлена в 'on', NGINX потенциально сокращает время, необходимое для SSL-рукопожатия при последующих соединениях, поскольку рукопожатие можно пропустить при повторном использовании существующей сессии. И наоборот, установка в 'off' отключает эту функциональность, что может привести к увеличению задержки при повторных соединениях из-за необходимости полного SSL-рукопожатия каждый раз. Директива применима в различных контекстах, включая `http`, `server` и `location`, что обеспечивает гибкость в зависимости от области действия gRPC-сервисов, которым требуется повторное использование сессий. Обратите внимание, что хотя повторное использование сессий может значительно улучшить производительность, оно требует соответствующей настройки и совместимости между сервером и клиентами для корректной работы. SSL session IDs должны быть общими между сервером и клиентами для успешного повторного использования, что иногда требует дополнительных мер по кэшированию сессий между несколькими экземплярами сервера, если это необходимо.
Пример конфига
server {
listen 443 ssl;
grpc_ssl_session_reuse on;
ssl_certificate /path/to/cert;
ssl_certificate_key /path/to/key;
# other configurations...
}Убедитесь, что идентификаторы SSL-сессий корректно управляются и разделяются между экземплярами сервера для правильного повторного использования сессий.
Не все gRPC-клиенты поддерживают повторное использование SSL-сессий; проверьте совместимость клиентов перед включением этой функции.
Выигрыш в производительности может быть незначительным, если SSL-сессии не используются часто; рекомендуется провести тестирование.