grpc_ssl_session_reuse
在 NGINX 中启用或禁用 gRPC 连接的 SSL 会话重用。 — NGINX HTTP Core
grpc_ssl_session_reuse
httpserverlocation
语法grpc_ssl_session_reuse on | off;
默认值off
上下文http, server, location
模块NGINX HTTP Core
参数flag
说明
`grpc_ssl_session_reuse` 指令用于配置通过 NGINX 服务器建立的 gRPC 连接的 SSL 会话重用。它可以设置为一个标志值;启用时,gRPC 客户端可以重用现有的 SSL 会话来建立新连接,从而优化资源利用并提升性能。当该指令设置为 'on' 时,NGINX 在后续连接上可能减少 SSL 握手所需的时间,因为如果重用了现有会话则可以跳过握手。相反,将其设置为 'off' 会禁用此功能,这可能导致重复连接时延迟增加,因为每次都需要完整的 SSL 握手。 该指令可在多种上下文中使用,包括 `http`、`server` 和 `location`,根据需要重用会话的 gRPC 服务范围提供灵活性。请注意,虽然会话重用可以显著提高性能,但它要求服务器和客户端之间有适当的配置与兼容性才能正确工作。SSL 会话 ID 必须在服务器和客户端之间共享才可成功重用,这有时需要在多个服务器实例之间进行会话缓存的额外考虑。
配置示例
server {
listen 443 ssl;
grpc_ssl_session_reuse on;
ssl_certificate /path/to/cert;
ssl_certificate_key /path/to/key;
# other configurations...
}⚠
确保 SSL session IDs 在服务器实例之间被正确管理和共享,以实现正确的 session reuse。
⚠
并非所有 gRPC 客户端都支持 SSL session reuse;在启用此功能之前请验证客户端兼容性。
⚠
如果 SSL sessions 未被频繁重用,性能提升可能微乎其微;建议进行测试。