http保持活动状态和ssl

http保持活动状态和ssl,ssl,https,webserver,keep-alive,Ssl,Https,Webserver,Keep Alive,通常建议在keep alive中使用低值,如15秒左右,这样我们可以经常清除空闲套接字并为更多客户端服务 考虑到我们有一个SSL连接,所以15秒钟的不活动,这个连接将被关闭,这不是无效的吗?因为若客户端想在某个时间后获取更多数据,它必须再次进行SSL协商 我想我错过了一些要点?请建议https如何更好地与keep alive配合使用,具体取决于: 如果服务器有大量资源,则使用较长的保持活动时间更有效 如果服务器缺少资源,最好是时间较短,因为每个打开的连接都会绑定资源 SSL连接建立有一些开销,

通常建议在keep alive中使用低值,如15秒左右,这样我们可以经常清除空闲套接字并为更多客户端服务 考虑到我们有一个SSL连接,所以15秒钟的不活动,这个连接将被关闭,这不是无效的吗?因为若客户端想在某个时间后获取更多数据,它必须再次进行SSL协商

我想我错过了一些要点?请建议https如何更好地与keep alive配合使用,具体取决于:

  • 如果服务器有大量资源,则使用较长的保持活动时间更有效
  • 如果服务器缺少资源,最好是时间较短,因为每个打开的连接都会绑定资源
  • SSL连接建立有一些开销,因此需要更多的资源(CPU时间)
  • 但是,通过会话恢复可以减少这种开销,但代价是另一种开销(用于缓存会话的内存)
最后,最佳设置取决于服务器的功能、负载等。
如果您不缺乏资源,最好保持较长的生存时间,因为这样客户端将更快地与您的站点交互。

您可能需要考虑以下几个目标:

  • 如果您正在优化延迟,那么您希望保持足够长的活动时间以捕获连续的请求,从而最小化TCP和/或TLS握手的开销
  • 如果您正在优化单个服务器的扩展能力以服务于大量用户,那么您希望短时间保持活动
  • 如果您正在优化初始页面加载,这会加载大量的小资源,那么您希望有一个短的保持活动
  • 一般来说,静态文件服务器(针对一起下载的许多小文件进行了优化,如支持HTML页面的CSS、图像、JS)应该具有简短但非零的保持活动

    文件下载服务器(针对大型下载进行了优化)不需要保持活动状态,因为下载时间支配着握手。您可能希望支持范围请求,以支持简历和并行下载

    对延迟敏感的请求应具有长时间保持活动状态