使用keepAlive将短链接改为长连接
1. 尽量避免发送HTTP请求
利用缓存技术
- 客户端会把第一次请求及响应的数据保存到本地磁盘上,其中将请求的URL作为key,响应作为value。两者形成映射关系
- 服务端响应内容时会估算一个过期的时间,并将这个信息放到响应头部中。
- 如果后续浏览器再次发送相同的请求,就先在本地磁盘通过key查找相应的value。如果找到了且还没过期,就直接从本地读取该相应。
- 如果过期了,客户端就需要重新向服务端发送请求,不过会在请求头部的Etag字段带上第一次响应的响应头部中的摘要,当服务器收到请求后,会将本地资源的摘要和请求中的摘要做对比
- 如果相同,则说明客户端的缓存还可以用,服务器端响应304,告知客户端缓存仍有效。
- 如果不同,则服务端响应中要带上最新的资源
2. 减少重定向次数
- 重定向需要发送多次请求,尽量减少重定向的次数,
- 让代理服务器负责重定向
3. 延迟发送请求
- 请求页面的时候,没必要一次性将所有资源的获取到。只是获取用户所看到的页面资源
- 当用户滑动页面的时候,再向服务器获取接下来的资源。
4. 减少请求次数
- 比如将图片的二进制数据通过base64编码,然后把编码数据嵌入到HTML或css文件中,以此减少网络请求次数