【刷题】面筋-页面加载慢的缘由
背景
- 记得之前有个培训班的老师过来宣传,他当时问了咱们一个问题,“打开一个网页慢,你能说出10个缘由么?”,我脑海里马上就出现了网速慢、电脑卡等缘由,可是发现本身能说出的不超过五个,本身仍是学web的,GG。今天忽然想到了这个问题,就总结下
带宽不足
- 首先想到的就是本身网速的问题,可是通常网速在1M以上的,打开网页通常不会是很慢的。网站服务器的带宽不够的话,当大量用户访问的时候,网页的加载也是很慢的,这就是网络的出口端和入口端两个方面
硬件配置低
- 本机的配置也会是一方面的,可是只要不是老赛扬单核+512M的配置,通常不会是电脑配置的问题。服务器端的配置也是一样的道理。
CPU或者是内存被占满
- CPU或者是内存被占满的时候,打开网页非常会很慢的,由于整个电脑都很慢
DNS解析慢
- 域名的解析是须要专门的域名解析服务器来完成的,DNS解析包括往复解析的次数及每次解析所花费的时间,它们二者的积便是DNS解析所耗费的总时间,在http请求的过程当中,域名解析和创建链接占的时间不少。
JS阻塞请求
- 写的js代码出现问题,解析就会花费很长时间,这两个js请求之间会出现一个很大的空隙,就会致使这段时间的资源加载都被阻塞住,
接受数据时间过长
- http请求的大部分时间应该花在后面几个阶段,好比等待响应和接收数据。可是,若是接收数据的时间太长了,长到数百毫秒甚至以秒计算的时候,那也是有问题的。这种状况通常是由于下载的内容过重了,例如大图片、大脚本等。这类问题可使用GZIP压缩、图片压缩或者JS/CSS的minify等手段来解决。
加载某个资源太慢
- 若是某个请求比其余的请求多出不少的时间,那么通常状况就是某个资源的加载太慢,致使了整个网页变慢,缘由有多是1)资源在第三方站点上,他们很慢;2)这个资源太大了;3)这个资源使用的域名有问题
后端代码问题
- 主要有代码冗余、数据库发生锁死、动态请求时间过长等,这就须要RD优化一切能够优化的东西了
前端页面请求的资源过多
- onload以前若是有几百行,速度天然会慢的,若是请求的资源不存在,那么速度将会更慢
网页自己中包含了追踪或者是分析用户的工具
- 致使网页的加载时间变的慢,好比以前海盗湾中会给用户的电脑插入挖矿的js脚本
。。前端
参考连接
END
欢迎关注本站公众号,获取更多信息