网站页面加载慢的可能原因及解决方法(全)
随着人们生活节奏的加快,人们对等待的容忍度越来越低,就连上网打开页面等待的时间也越来越短,从30秒逐渐缩短为3秒,如果一个页面3秒内没有打开,那么这个用户就很容易流失。
所以,不管作为产品经理还是运营人员,要提升产品的用户体验首先需要提高产品页面的加载速度。如果因页面加载慢导致用户离开,纵然你的产品功能再好用、视觉设计再震撼、文案内容再精彩,用户也不会知道了。
想要提高页面加载速度,首先需要分析目前页面加载慢的原因,下面列出页面加载慢的6种常见原因及处理方法:(ps:以下都是纯经验干货分享,建议先点赞收藏以免用时找不到)
1、 接收数据时间过长,如下载资源过大
解决方法:对HTTP传输进行压缩,即在js,css、图片等资源已经压缩的基础上,在HTTP传输过程中的再次压缩。客户端可以通过Accept-Encoding头来声明浏览器支持的压缩方式,服务端通过Content-Encoding来启用压缩,配置压缩的文件类型,压缩方式。gzip使用无损压缩,压缩效果最佳,已经成为使用最为普遍、支持的浏览器最多的数据压缩格式。
2、JavaScript脚本过大,阻塞了页面的加载
解决方法:将JavaScript脚本放在标签前。script没有async和defer时,JS文件将在下载后立即执行。这种情况下,script放在顶部会阻塞页面呈现,在网速慢的情况下会导致“白屏”,直到脚本下载完毕才继续呈现页面。因此,script放在底部可以让页面尽快呈现。
3、 CSS、JavaScript、图片等需要重复加载
解决方法:静态资源统一放在一个静态域名上,减轻重复下载静态资源的负担。
4、网页资源过多
解决方法:使用CDN部署网络以提高下载速度,可以先通过免费的CDN供 应商来分发网页资源。
5、 cookie影响
解决方法:减小cookie的影响
(1)去除没有必要的cookie,如果网页不需要cookie就完全禁掉。
(2)将cookie的大小减到最小:减小HTTP请求报文的大小,提高响应速度。
(3)设置合适的过期时间:cookie信息将存储到硬盘上,即使浏览器退出cookie还会存在,
只要cookie未被清除且还在过期时间内,该cookie就会在访问对应域名时发送给服务器。
(4)通过使用不同的domain减少cookie的使用:cookie在访问对应域名下的资源时都会通过HTTP请求发送到服务器,但在访问一些资源,如js,css和图片时,大多数情况下cookie 是多余的,可以使用不同的domain来存储这些静态资源,这样访问这些资源时就不会发送多余的cookie,从而提高响应速度。
6、 后端代码问题
后端代码问题,主要有代码冗余、数据库发生锁死、动态请求时间过长等。
解决方法:优化冗余代码,压缩或精简Javascript代码和css代码和减少HTTP请求数。其中减少HTTP请求数有3种方法:
(1)减少不必要的HTTP请求
例如用CSS圆角代替圆角图片,尽量减少图片的使用。
(2)合并文件
1)对于文本文件,可以直接合并内容。例如将多个JS(JavaScript的简称)文件合并成一个,将多个CSS文件合并成一个。
2)图片地图:把多张图片整合到一张图片中,以位置定位超链接。
3)CSS Sprites合并图片,通过指定CSS的backgroud-image和backgroud-position来显示元素。
4)合并JS脚本和CSS样式表。
5)使用外部JS和CSS文件。
(3)优化缓存
对于没有变化的网页元素(如页头、页尾等),用户再次访问的时候没有必要重新下载,直接从浏览器缓存里读取就可以了。
END
欢迎大家关注微信公众号:互联网运营资料馆,到主页可获取更多的经验分享、运营方案、思维导图、运营工具和运营相关电子书等。
(文章为原创,如转载请注明出处,侵权必究!)