Web 性能优化
2019-04-13 本文已影响0人
小白兔养家
DNS查询
减少域名以减少DNS查询时间。
连接复用
开启keep-alive可以使得连接复用。开启HTTP/2.0可以使得多路复用,从而提高TCP连接效率。
发送HTTP请求时
- 减少cookie体积,不要滥用cookie。
- 使用 Cache-Control,缓存使得在一段时间内不用发送HTTP请求。
增加域名,可以使得请求并发数量很多。
接收响应时
- 使用 Etag ,完全不接收响应,只接收一个304。
- 不得不接收的话,使用 Gzip 压缩一下,打包 css、js文件,接收到了再解压缩。从而减少资源体积。
使用 CDN(内容分发网络)
- 增加并发下载数。
- 解除光速的限制,降低通信距离。CDN可以把一个很远的资源分布到全球各地,让全球各地不同用户访问起来很快。
CDN也可以减少cookie。
调整 CSS 和 JS 的位置
把css放到head里,js放到body最后。css会阻塞页面渲染,所以将css放前面尽早下载。js放到后面可以尽早显示页面,且方便获取节点。
合并文件(CSS、JS、图片)
合并文件是通过把所有的脚本放到一个文件中来减少HTTP请求的方法,如可以简单地把所有的CSS文件都放入一个样式表中。当脚本或者样式表在不同页面中使用时需要做不同的修改,这可能会相对麻烦点,但即便如此也要把这个方法作为改善页面性能的重要一步。
CSS Sprites是减少图像请求的有效方法。把所有的背景图像都放到一个图片文件中,然后通过CSS的background-image和background-position属性来显示图片的不同部分
内联图像是使用data:URL scheme的方法把图像数据加载页面中。
延迟加载
懒加载,预加载,将不是页面初始化必须的内容延迟加载。