软件开发不只写代码那么简单——性能制胜

性能的重要性

已经有大量的实验数据表明:网站载入和显示的速度越慢,使用它的人就会越少。
比如:
google发现,显示10个结果的网页需要0.4秒来生成,显示30个结果的网页需要0.9秒来生成。半秒钟的延迟会造成20%的流量下降。半秒钟的延迟就扼杀了用户的满意度。

在A/B测试中,亚马逊试着以100毫秒为单位逐步增加页面的延迟,结果发现即使是非常小的延迟也会付出高昂的代价,导致收入显著下跌。

于是,你如何把自己跟别人区别开来呢?你得从“快”入手,其他的先放一放。

雅虎的指导原则

自2007年以来,构建一个快速的网站的黄金参考准则始终首推雅虎提出的“加速你的网站的13条简单原则”。这里有些不错的建议,但是,其中很多的建议只有在你运营了一个每天有几百万独立用户访问的网站时才有意义。

比如:
用户与你网络服务器的邻近程度直接影响着响应时间。从用户的角度来看,把你的内容部署在多个地理位置分散的服务器上会让你的网页加载得更快。作为性能优化的最后一步,stack overflow把他们所有的静态内容都部署到了cnd。结果很令人振奋。

但是,不会推荐大家直接上cdn。因为你的网站流量说不定还没有到达需要使用这一招的时候。因为在雅虎的清单上有一大推改善性能的做法是免费而且很容易实现。自2007年以来,使用cdn的成本降低了很多,用起来也简便了很多。这要归功于有更多的公司参与了这个领域的竞争,它们包括亚马逊,NetDNA,CacheFly等。
因此,当时机成熟的时候,而且你已经做完了雅虎清单上要求做的事情,你就可以考虑cdn了。

中国的互联网公司

亚马逊是墙外著名的电商互联网公司,而在国内,淘宝是首曲一指的。如果你的服务是缓慢的,遇到了瓶颈,我觉得淘宝技术这十年是很好的参考手册。
里面讲述了淘宝从最初的小流量服务,到现在如何成为撑起每天那么大流量的互联网企业。淘宝是如何一步步在遇到困难的时候,革新技术,解决服务瓶颈,在漫长的岁月中往复做着这个事情。最后最好的机器和技术已经无法满足淘宝的业务,技术创新诞生了,并且至今形成了淘宝自己的技术体系。
你可以借鉴里面的东西,来优化你自己的服务。

总结

对大多数网站而言,性能是一种特性,能克敌制胜。几乎所有的用户更喜欢使用快速的网站。在这里,我想我们还应该学到一个教训——在开放的互联网世界里竞争,最后只会剩下两种网站:要么很快,要么已经死去。而你又将何去何从。

显示 Gitment 评论