高级前端http【Q401】在 TLS 层如何优化网站性能

在 TLS 层如何优化网站性能

Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 408

Author 回答者: shfshanyue

  1. OSCP Stapling
  2. TLS 1.3

Author 回答者: Echo-MakeGreatEffort

  1. 启用 TLS 1.3:(1)TLS 1.2 通常需要两个 RTT 来完成握手;TLS 1.3 只需要一个 RTT,降低了延迟(在发送第一个“Hello”消息时,不仅提供加密套件等信息,还包括生成的密钥交换参数(使用椭圆曲线 Diffie-Hellman,ECDHE)和其他需要的信息,服务器响应,选择加密套件并发送密钥交换参数。双方立即可以计算出共享的会话密钥) (2)0-RTT 握手:TLS 1.3 支持“0-RTT”握手,这允许客户端和服务器在之前的会话基础上立即恢复连接
  2. HTTP/2 和 TLS 的结合:多路复用、头部压缩、服务器推送
  3. 启用 OCSP Stapling:允许服务器在握手过程中将最新的证书状态直接发送给客户端,避免了客户端向 CA 服务器进行额外查询,从而减少延迟

Author 回答者: Echo-MakeGreatEffort

优化 TLS 性能可以通过减少握手延迟、提高加密效率和减少连接次数等方法实现。启用 TLS 1.3、会话复用、优化加密套件和结合 HTTP/2 是提升 HTTPS 网站性能的关键策略