【测试面试题】页面很卡的原因分析及解决方案

目录

原因一:http请求次数太多

原因二:接收数据时间过长,如下载资源过大

原因三:JavaScript脚本过大,阻塞了页面的加载

原因四:CSS、JavaScript、图片等需要重复加载

原因五:cookie影响

原因六:网页资源过多


关于页面很卡的原因分析及解决方案如下:

原因一:http请求次数太多

解决:减少http请求次数。

① 图片地图:把多张图片整合到一张图片中,以位置定位超链接。

② CSS Sprites合并图片,通过指定CSS的backgroud-image和backgroud-position来显示元素。

③ 合并JS脚本和CSS样式表。

④ 使用外部JS和CSS文件。

原因二:接收数据时间过长,如下载资源过大

解决:对HTTP传输进行压缩。

即在js,css、图片等资源已经压缩的基础上,在HTTP传输过程中的再次压缩。

客户端可以通过Accept-Encoding头来声明浏览器支持的压缩方式,服务端通过Content-Encoding来启用压缩,配置压缩的文件类型,压缩方式。gzip使用无损压缩,压缩效果最佳,已经成为使用最为普遍、支持的浏览器最多的数据压缩格式。

原因三:JavaScript脚本过大,阻塞了页面的加载

解决:将JavaScript脚本放在标签前。

script没有async和defer时,JS文件将在下载后立即执行。这种情况下,script放在顶部会阻塞页面呈现,在网速慢的情况下会导致“白屏”,直到脚本下载完毕才继续呈现页面。

因此,script放在底部可以让页面尽快呈现。
https://blog.csdn.net/zhouziyu2011/article/details/71330739

原因四:CSS、JavaScript、图片等需要重复加载

解决:静态资源统一放在一个静态域名上,减轻重复下载静态资源的负担。

原因五:cookie影响

解决:减小cookie的影响。

① 去除没有必要的cookie,如果网页不需要cookie就完全禁掉。

② 将cookie的大小减到最小:减小HTTP请求报文的大小,提高响应速度。

③ 设置合适的过期时间:cookie信息将存储到硬盘上,即使浏览器退出cookie还会存在,只要cookie未被清除且还在过期时间内,该cookie就会在访问对应域名时发送给服务器。

④ 通过使用不同的domain减少cookie的使用:cookie在访问对应域名下的资源时都会通过HTTP请求发送到服务器,但在访问一些资源,如js,css和图片时,大多数情况下cookie是多余的,可以使用不同的domain来存储这些静态资源,这样访问这些资源时就不会发送多余的cookie,从而提高响应速度。

原因六:网页资源过多

解决:使用CDN部署网络以提高下载速度,可以先通过免费的CDN供应商来分发网页资源。
原因:DNS解析速度
DNS解析是从域名到IP的解析。DNS解析包括往复解析的次数及每次解析所花费的时间,它们两者的积即是DNS解析所耗费的总时间。许多人无视了DNS解析的因素,其实它对网站解析速度也是十分重要的。可以更换延迟比较低的DNS服务器。
————————————————
版权声明:本文为CSDN博主「测试界的飘柔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_67695717/article/details/125647821

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值