1.DNS服务器加速
- 用户输入url的地址,先会通过DNS得到对应地址的ip地址。
因为DNS一般访问都比较快,所以没啥人直接做
- 可以配hosts,直接给ip配好,就不用查询这个步骤了。
2.keep-alive
- 浏览器/客户端向服务器发送http请求,而这样的通信是通过tcp连接,发送的请求包括html,css和js。
- 通过keep-alive可以实现通信过程中tcp不中断,实现连接复用。
3.SQL优化
- 服务器从数据库获取数据的过程大部分是通过SQL查询得到
4.提升服务器的带宽
5.使用gzip压缩
- 服务器返回查询结果,返回的时间 = 数据总量/速度
- 对速度的提升有花钱去提升服务器的带宽
- 减少数据总量可以通过gzip之类的压缩算法来压缩代码的实际体积
6.优化css
- 当客户端得到返回结果后,就要进行展示了
- 可以把一些重复的属性和选择器合并
7.先css再js
- 用户习惯一般是先看,然后再进行页面操作的
- 具体来说就是把css放到head的里面,把js放到body的下面
8.懒加载
用户在加载第一屏的时候是看不到第二屏的,所以没必要一开始就把所有资源都加载。
9.预加载
在用户看第一页的时候就加载好第二页 使用场景,例如用户在看小说的时候,就可以使用,用户就能达到秒开的效果 这样做的一个弊端就是浪费带宽
10.cache-control:max-age
- 用户再次点开这个页面的时候
- 给css和js还有图片的http加缓存
11.加域名
对一个资源的html和css还有js如果每个都要发一次请求,未免太耗时 但是如果一次性将所有请求发完,则是对带宽资源的一种消耗,所以会对同一个域名每次发的请求数量进行限制,
- 这就是域名的最大请求数的限制。
- 但是如果我使用不同的域名去发这些请求就能一次性发完。
但是这样会增加dns的时间。所以要权衡使用
12.cookie free
- cookie是个很占空间的内容,如果每个请求都要加cookie,会让请求发送的总量翻倍,
- 所以,对于一些css和js可以让它们不需要cookie就能访问,也就是无cookie,cookie-free
13.怎么使用优化技巧?
先创造需求,让别人觉得需要网站访问快一点,然后运用技巧解决需求,合理表现自我。