客户端优化
静态资源优化
- 使用构建工具对HTML,CSS,JS压缩,删除生成环境下的无用的代码
- 提取公共资源,减少代码体积
- 外链CSS和JS文件,外链的文件可以放到CDN,服务器和浏览器会进行缓存
- 使用雪碧图(CSS雪碧 即CSS Sprite,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法是将小图标和背景图像合并到一张图片上,然后利用css的背景定位来显示需要显示的图片部分),减少http请求次数
- 使用字体图标
- 图片使用webp格式(由谷歌于2010年推出的新一代图片格式,在压缩方面比当前JPEG格式更优越。在质量相同的情况下,WebP格式图像的体积要比JPEG格式图像小40%)
网络请求优化
- 使用get请求,get请求会缓存请求,比起post,只发送一个tcp包(传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议),效率更好。
- 合并请求数量,减少http请求次数,节约网络请求时间
-
减少DNS请求所耗费的时间.且不说对错,因为从基本来说,减少http请求数的确可以减少DNS请求和解析耗费的时间.
-
减少服务器压力.这个通常是被考虑最多的,因为每个http请求都会耗费服务器资源,特别是一些需要计算合并等操作的服务器,耗费服务器的cpu资源可不是开玩笑的事情,硬盘可以用钱买来,cpu资源可就没那么廉价了.
-
减少http请求头.当我们对服务器发起一个请求的时候,我们会携带着这个域名下的cookie和一些其他的信息在http头部里,然后服务器响应请求的时候也会带回一些cookie之类的头部信息.这些信息有的时候会很大,在这种请求和响应的时候会影响带宽性能.
- 浏览器对每次请求的数量都有限制,一般是每次只能3次左右,合并请求将加快速度。