我们悄悄优化了页面载入速度

随着访问量的增大,我们发现在高峰时期 SegmentFault 的载入速度越来越慢,而且还时不时会出现 502 的问题 。而优化载入速度是一个很庞大的系统工程,它不仅涉及到系统设计,前端改造还包括业务逻辑的优化等等 。但是,有些问题是可以立马解决的,而且可以带来比较明显的提升效果,因此我们这次的优化就集中在这些问题上了 。
加机器这是增加系统承载量最简单粗暴的方法,当然这次也不能免俗 。当然作为一个创业公司,我们对增加服务器一直是比较谨慎的,对现有服务器的性能也是一直压榨压榨再压榨(手动微笑) 。当然考虑到现有服务器在高峰期的负载已经逼近峰值,这加机器也是必不可少的了 。
于是我们首先升级了 php 的版本(这可以带来少量的性能提升),并且增加了服务器的数量 。负载立马下降,效果立竿见影 。但是要加快载入,还需要一些其它的手段综合使用 。
剥离其它业务的访问量之前为了配置方便,我们的一些附属服务的流量也是从同一个流量入口进入 。这就导致了在高峰期的网络拥挤 。特别是广告服务,因为一个页面往往有好几个广告位置,这导致请求量被成倍放大 。
在这次优化中,这些服务被挪到单独的入口,并进行针对性的网络优化 。以前吃紧的带宽,一下子富余了很多 。负载均衡服务器的压力也大大下降了
前端页面的小优化在用debug工具查看页面的网络请求时,我们发现广告业务的请求是同步加载的,这就导致页面的渲染会一顿一顿地进行,用户体验比较糟糕 。于是我们修改了广告载入的逻辑,让它与页面加载异步进行,这提高了感官上的页面载入速度 。
总结载入速度优化是一个持续不断的过程,我们也会把这项工作继续进行下去 。这些立竿见影的改进完成后,就是业务逻辑的优化,这些硬仗可能会持续很长时间 。目前我们已经在对某些页面做针对性的改进,比如大家能看到的新版文章页 。后续还有一大波新的页面正在赶来的路上 。

【我们悄悄优化了页面载入速度】


    推荐阅读