--> 本文翻译自Jeff Atwood的博文《Performance is a Feature》。作者就如何创立高性能网站分享了一些教训。现收拾出来与大家分享。
这是典范的“write once, read – and hopefully edit – millions of times.”,同时咱们也因社区活泼用户使网站内容更加丰盛多彩。我们始终在改良新的性能,这也就象征着我们将供给JavaScript 跟HTML甚至更多服务。通过下载量上就能够在用户之间分辨出哪些用户天天在网上,哪些用户是一个月或者是一年才阅读网站。 跟着开发团队为大家所浮现的渲染出的页面,所作出的性能上风,良多处所因为一点点马虎而导致页面不相当,大局部机能是混乱的,甚至无奈进行重建,对用户来说事件也变得更加简略,快捷。 Make Performance a Point of (Public) Pride 作出性能优势 这里有一些好的倡议,如果运行某一个网站,每天可领有数百万的用户。 留神你可以点击SQL上的链接,看看每一步实际运行的时光有多久。你也可以把链接分享给你的搭档们,开发出该运行剖析器数据中的弊病。它实用于AJAX恳求,之前我所提到的开源MVC Mini Profiler是完整宏大的,假如此时你在.NET上,你应当去核实下。 Yahoo YSlow 因为对于雅虎的性能调剂,而且都是免费的小工具,导致我们不会持续推举CDN,与其余公司相比相似亚马逊、NetDNA和CacheFly等,自从2007年以来使用CDN也受益许多。因此。在机会成熟时,把雅虎列表当做一种信奉来工作吧。 现在,我们已经完全使用雅虎的性能指点,并确保对匿名用户提供最基本的必要的服务。 依照雅虎的领导方针 两种类别都很主要,针对不同的需求。匿名用户偏爱优化浏览器速度。而社区用户则更关怀内容资源。两种种别相互依附,并需要不同的看待。我们设计和优化两个用户类:匿名用户和注册用户。下面是我随机筛选的谷歌Chrome浏览器用户使用情形: 目前我们的重要信息起源于匿名用户,通过他们的搜索引擎以及其他方法获知。 Google Page Speed 它会正常运行吗? ILAsm畸形运行: 你是否感到这有必要如斯对速度的需要?如果是这样,我有三点提议与大家分享。 我们尽量减少匿名用户使用HTML网站制作公司, CSS and Javascript这样网页速度更快。我们在用户输入大区域设置一个基础功能“rez in&rdquo最大的网络公司;类似编纂功能,对注册用户来说,空间容量必须足够大,同时我们也为大多数的社区用户增添功效,防止侵害匿名用户的丰硕休会。 很多数据表明,网页翻开和下载的速度越慢,用户越不愿使用。 器重(优化)匿名和注册用户 性能改变不是简易之事,这是一个漫长而又艰巨的途径,我们已经朝着好的硬件方向一直的转变着。 我明白的记得,2000年从AltaVista体系切换到Google,它的速度极快,对我来说,性能是一种特征,比拟慢的网页我更喜欢乐速的。因而我创建了一个网站,这也恰是我想应用的。然而,我以为在公共互联网竞争环境中有一种货色永远值得我们去学习——即所谓的两品种型的网站:倏地与停止。 为树立疾速的网站黄金参考尺度,雅虎2007年为网站进步速度的13个简易规矩。 当然,服务器页面所出现的时间仅仅是性能的一部门,它取决于的时间你从哪段开端。我不能保障页面呈现的时间段能辅助我们多少,但作为一个开发团队,应该建破一个惹人注视且又快的网站。我们的网站算是比拟快的,但即便是像我们这么快的网站,由于这个简单的变更我们也受益很多。 一直以来,我们对雅虎的列表实行超过13项,除了一个:Using a Content Delivery Network。作为最后一步的优化,我们刚推出了为所有静态内容的CDN,结果是令人高兴的,我们的数据核心在NYC, 因此,可以说成“在世界上的某个区域我们的网站为用户提供的有多快速?”。 我信任反过来也是如此,即网站速度越快,就会有更多的人乐意使用它。这是一个逻辑:页面速度载入的越快,用户就能越快可以辨别这个页面是否包括了想要的东西。因此,他们老是乐意浏览快速的网站。不论这些内容是否是用户要寻找的,当然也有类似的经验,可提供多个网站。那么如何鉴别呢?首先,它得存在,速度要快。 这是抓取Google页面下载时段;从表上反应出完全的页面须要载入的时间: 因为我四年前写的这个,产生了一些有趣的事。我现在经营一家公共网站,技术问答社区,日常访问量可到达数百万用户。当然它也取决于网站范围的大小。 如果你想经营一家公共网站,你真的应该熟读雅虎的清单,居心懂得每一行或者借助于工具,它们都会赞助你改变网站的性能: Pingdom Tools 这就是为什么作为一名开发职员,需要在每一个独立页面右上角设置性能。同时,这正是我们用MVC Mini Profiler来增进开源,而在把每一页的右上角服务器渲染时间的简单行来迫使我们解决我们所有的性能消退和漏掉。 从Google搜寻中可看出,当页面显示10个谜底需要用时0.4秒,而页面呈现30个成果需要用时0.9秒,仅仅半秒钟导致降落20%的传输,半秒钟的延迟同时下降了用户的满足度。 从技巧的正确度好处上讲,静态内容不支撑图片特性,用户必需通过我们的NFC服务来取得动态内容,但是90%的访问者都是匿名的,只有36%的流量来自于美国。雅虎的研讨表明,40%---60%的日常拜访者用一个空的浏览器来缓存,而可能优化这个寰球冷门缓存性能是个伟大的成功。 当谈及网站性能时,就会想到一个根本的定律:你永远无法让网页服务的速度比在服务器上渲染网页的速度快。我晓得这一点,但是我得告知你,如果在一年左右的开发过程中不注意到多少百毫秒的差异,就会很轻易会落入陷进。当某天,你回转过来,发明你的网页以一个十分奇怪的速度呈当初服务器上了。这是一个了不起的速度,甚至你在网络上传输第一个字节时,网页已经打开! 以下是博客内容: (责任编辑:admin) |