Skip to content
微信公众号

请求和响应优化

请求和响应优化的目的是更快的内容到达时间。它的核心思路是:

  • 更好的连接传输效率,包括DNS查询、HTTP三次握手连接
  • 更少的请求数量,减少客户端向服务端请求数量
  • 更小的资源大小
  • 合适的缓存策略

解决方案

  1. 减少 DNS 查找:每次主机名的解析都需要一次网络往返,从而增加了请求的延迟时间,同时还会阻塞后续的请求。
  2. 重用 TCP 连接:尽可能的使用持久连接,以消除因 TCP 握手和慢启动导致的延迟。
  3. 减少 HTTP 重定向:HTTP 冲定向需要额外的 DNS 查询、TCP 握手等非常耗时,最佳的重定向次数为0。
  4. 压缩传输的资源:比如 Gzip、图片压缩。
  5. 使用缓存:比如 HTTP 缓存、CDN 缓存、Service Worker 缓存。
  6. 使用 CDN(内容分发网络):把数据放在离用户地理位置更近的地方,可以明显减少每次 TCP 连接的网络延迟,增大吞吐量。
  7. 删除没有必要请求的资源。
  8. 在客户端缓存资源:缓存必要的应用资源,避免每次都重复请求相同的内容,例如多图片下载可以考虑使用缓存。
  9. 内容在传输前先压缩:传输数据之前应该先压缩应用资源,把要传输的字节减少到最小,在压缩的时候确保对每种不同的资源采用最好的压缩手段。
  10. 消除不必要的请求开销:减少请求的 HTTP 首部数据(比如 HTTP COokie)
  11. 并行处理请求和响应:请求和响应的排队都会导致延迟,可以尝试并行的处理请求和响应(利用多个 HTTP1.1 连接实现并行下载,在可能的情况下使用 HTTP 管道计数)。
  12. 针对协议版本采取优化措施。升级到 HTTP2.0。
  13. 根据需要采用服务端渲染方式。这种方式可以解决 SPA 应用首屏渲染慢的问题。
  14. 采用预渲染的方式快速加载静态页面。页面渲染的极致性能,比较适合静态页面。

本站总访问量次,本站总访客数人次
Released under the MIT License.