来源:沙漠风网站建设公司 | 2020.09.01
常用web优化方法
1. HTTP请求减少
一次完整的请求都需要经过队列等待、 DNS寻址、与服务器建立连接、发送请求、等待服务器响应、下载数据这样一个 “漫长” 而复杂的过程。通常,网页请求的HTTP越多,加载速度就越慢。因为浏览器限制了单个域名下同时一定数量的同时连接数(一般为6-12个)。为避免瓶颈,使用资源合并、雪碧图等以减少了单个页面的请求数量。从而减少HTTP请求和加载网页所需的往返次数。减少HTTP请求是zui重要的优化技术,其影响zui大。
2.文件压缩
Web页面是由HTML、CSS和JavaScript等代码文件构成的。随着网页复杂程度的提高,其代码文件以及随后的加载时间也随之增加。文件压缩可以将代码文件减少多达80%,从而提高站点响应速度。通常使用webpack、gulp或grunt来压缩web代码, 使用tinypng来压缩图片。
3. 浏览器缓存
缓存优化可减少服务器负载,带宽使用量和延迟,如果允许浏览器缓存您的站点文件(外部样式表,JavaScript文件,图像等)意味着不需要每次用户请求站点上的网页时都下载文件。这可以加快用户导航到另一个网页时的体验,因为不需要重新下载诸如样式表、图片和字体之类的内容,因为它们已经存储在用户的浏览器缓存中。
那么,我们如何允许浏览器缓存文件?
当浏览器从我们的Web服务器请求文件时,服务器将执行的操作之一就是发送文件的HTTP标头。文件的HTTP标头包含有关所请求文件的元数据,以及有关浏览器应如何处理文件的说明。
我们可以指定的标准HTTP标头字段之一是Cache-Control来设置缓存方式,Cache-Control允许我们定义我们希望浏览器缓存文件的方式。我们可以使用Cache-Control标头字段来告诉浏览器是否应该缓存文件,以及应该缓存文件多长时间。
Cache-Control: max-age=2592000
顺便说一句,max-age以秒为单位指定。2,592,000秒= 30天。
对于要缓存文件的确切时间,没有具体的规定,但是zui佳实践是将文件缓存的时间尽可能长。
缓存持续时间取决于您更新站点文件的频率以及要缓存的文件类型。例如,您可以max-age为不经常更改的文件(例如网站的LOGO,JS文件和CSS文件)设置更长的时间。
4. 开启GZIP
虽然开启GZIP压缩可以很大程度上压缩资源文件,但是也有一些需要注意的地方:
较旧的浏览器:某些浏览器可能仍无法处理压缩内容(他们说可以接受,但实际上不能)。
已经压缩的内容:大多数图像,音乐和视频已经被压缩。不要浪费时间再次压缩它们。实际上,您可能只需要压缩“三大文件”(HTML,CSS和JavaScript)。
CPU负载:动态压缩内容会占用CPU时间并节省带宽。通常鉴于压缩速度和CPU的性能限制,通常将压缩等级设置为6(随着压缩级别的升高,压缩比有所提高,但到了级别6后,很难再提高,并且压缩时间和压缩比例成正相关)。