- 减少域名,减少DNS查询
- 一个网页图片可能存在一个服务器上,js/css可能存在别的服务器上。减少域名数量。适用于文件较少的网站。因为浏览器同时请求的数量有限制。
- 建立TCP连接
- 连接复用 keep-alive。HTTP2.0多路复用。
- 发送HTTP请求
- 不要滥用cookie。减少请求体积。
- cache-control: 非常重要的优化手段。不发送请求,直接用本地缓存。
- 增加域名数量 一个域名最多只能同时发送4/8个请求。(权衡)如果网站请求10个css和10个js,则多个域名会有利。
- 接受相应
- ETag 304缓存 not modify。这个会发送请求。
- gzip 在response header 中添加 content-encoding: gzip
- DOCTYPE 不能不写,不能写错。
CDN
光从北京到美国大约需要30ms,一来一回需要60ms
CDN: 内容 分发 网络
css
css放head里,js放在Body最后
chrome css没下载好,会阻塞浏览器渲染画面。不化妆不出门。尽早显示页面,保证用户体验。
js放后面,用户可以先看到画面,在用户移动鼠标的过程中,就有足够的时间去下载js.