在互联网的世界里,盛行一句“天下功夫唯快不破”,对移动端的用户更是如此。用手机刷网页时,接近六成的用户表示希望网页的加载时间维持在 3 秒内。74% 的受调查者表示他们的等待时间不会超过 5 秒钟,否则后果不堪设想。那么导致网站加载缓慢的原因究竟有哪些呢?
提到性能,大家脑子里很自然地会蹦出“快慢”这样的字眼。诚然,从敲入网址到enter回车键,我们很容易感知网页的快慢,没错,这就是性能。如何通过挖掘这个过程,找到性能优化的绝招,正是我们这次要探讨的话题。除了主观上感受网站的快慢以外,我们还需要客观上认可性能的测试指标,比如响应时间、并发量、吞吐量。我们暂且以高速公路的收费站为例,如果把响应时间看成是一辆车经过收费站的时间,那么并发量就可以理解成这个收费站同时能通行多少辆车,而吞吐量则可以看成在一段时间内,这个收费站通往了多少了车。本期话题,希望能集思广益,共同探讨网站性能优化的绝招,欢迎大家踊跃参与。
话题讨论:
1. 通常我们可以把网站访问时期分为三个区间,日常运行区间、高峰区间、负载过重区间,导致网站加载缓慢的原因究竟有哪些呢? 2. 假如我们把响应时间和并发用户量看成一个二维的坐标图,那么随着并发用户量的增加,响应时间是否会一直增加?在这三个区间里,哪个区间增加的幅度最快?为什么? 3. 假如我们把吐吞量与并发用户量看成一个二维的坐标图,同样在网站的日常运行区间、高峰区间、负载过重区间里,随着并发用户量的增加,吞吐量是否会持续增加?为什么? 4. 我们可以把用户访问网站的流程分为三个阶段,第一个阶段在用户和浏览器端、第二个阶段在网络上、第三个阶段在网站服务器端,以京东商城的HTML简图为例,为什么会将CSS样式放在HTML前面?这三个阶段分别有哪些优化策略来提高网站的性能? 5. 在网站服务器端响应用户访问请求的数据时,大致有两种主要的方式,即异步请求方式和同步请求方式,请参看附件图片谈谈您觉得这两种方式有什么不同?常见的同步请求方式和异步请求方式有哪些应用场景?12306网站买票、京东淘宝购物时采用了哪种请求方式? 6.大部分网站访问都遵循28原则,即80%的访问请求,最终落在20%的数据上。这20%的热点数据将成为我们主要的缓存数据。目前的缓存有两种,一种是本地缓存,另一种是分布式缓存,像新浪微博采用了哪种缓存? 亲们,欢迎大家针对以上问题发表自己的看法,截止11月6日,我们将评选出获奖会员。 最优会员:赠送哈尔斯 500ml不锈钢直身真空保温水杯 活跃会员:赠送社区徽章
获奖会员:
最佳会员:pastime_Wang
活跃会员:
duronshi
lidrema
xuexiaogang
西索哥
i2235932666
|