Chinaunix首页 | 论坛 | 博客
  • 博客访问: 206555
  • 博文数量: 163
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 1720
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-08 11:41
文章分类

全部博文(163)

文章存档

2011年(1)

2009年(162)

我的朋友

分类:

2009-06-08 14:16:27

 如今,即使是一般网民也清楚设计网站时要使其运行速度较快该怎么做:减少发送给服务器的请求数量,缩小JPEG尺寸,及获得像Akamai Technologies或Limelight Networks之类内容分发网络供应商的服务。

  问题是,据一位资深性能优化工程师所称,这些旨在最优化web服务器的方法都成效甚微。这位工程师叫做Steve Souders,现在Google任性能优化总工程师,之前则在Yahoo任同样一职。

  “我们曾把Apache代码拆散打乱来看Yahoo到底是怎么运行的,” Souders说道。做过详细分析之后,Souders 吃惊地发现:加载网页时,只有10%到20%的时间是服务器所用的。

  在周二举办于洛杉矶的微软技术大会上,Souders发言说延迟大多是网页浏览器里执行代码的结果。Souders说,在今天的多AJAX网页上,问题代码常常是JavaScript。他说,这不是因为Web网页上JavaScript文件太大,而是由于Web浏览器对JavaScript的处理方式。

  “因为要依次执行所有JavaScript文件,第一代Web浏览器就决定它们还是执行一个的时候中止其它下载比较好。”于是就使其它代码不能被执行或处理。

  这种做法在十年前可能合理,但今天电脑由双核和四核CPU驱动的时代,情况就不同了。而且,延缓所造成的代价会很高。

  Souders说,Google发现延时500毫秒网路流量就会减少20%,而Amazon也看到100毫秒的延缓就缩减了1%的销售额。

  更好的浏览器,有更好的性能

  新版的和即将推出的Web 浏览器可以在执行JavaScript 文件的同时下载这些文件。Souders说,上月发行的Internet Explorer 8有这种性能,将推出的Mozilla公司的Firefox 3.5和Google的Chrome 2.0也可以。51CTO编者注:这四大浏览器在上两个月间都先后发布了重要更新,有关它们的性能已经有相关人士做出了比对;而据国际报 道,JavaScript成浏览器战争主战场。

  Souders说,不对JavaScript做详细检修,改善就不会很大。

  为解决这个问题,Souders 首次推荐了他制做的一种叫做Yslow的免费工具,Yslow分析并对Web网页在最大速度方面的设计情况划出级别。起初为IE打造的Yslow 2.0是一个与Firebug网页开发工具相结合的Firefox附加组件。它可以在Yahoo开发者网络上下载到。

  用户可以用Yslow看到JavaScript开始被加载的状况,并确定是否产生了瓶颈。然后用户就可以分解开JavaScript文件,只在开始加载所需的JavaScript,将剩下的留到最后,即文字和图片出现之后。

  这种方法帮助了一个Souders不愿透露名称的Google网站首页呈现速度提高了60%。

  CSS也会影响网站性能。描述Web页面外观的CSS文件近年变得越来越繁复。

  CSS文件成为问题,部分原因在于用户往往会整天停留在某些如Web邮件门户这样的多CSS页面上。Souders说,这些网站会整天不断重新呈现,产生由于每次对CSS文件表述过于详细造成的延迟。

  除JavaScript和CSS外,Yslow总共分析到22条准则规范。在级别划分方面Yslow不偏不倚。著名的网站如 Apple.com, ESPN.com和Wikipedia被划为C等,NYTimes.com, NBA.com和Computerworld.com都被归为更糟糕的E等。

  “看着这个,我觉得它就像是很严格地打成绩的老师。” Souders说。

  像Google.com和微软的Live.com这种页面上内容很少的搜索引擎在Yslow上属于寥寥可数的A类。

  除Yslow外,还有其它一些工具可用来检测性能瓶颈问题。微软提供有Visual Roundtrip Organizer,而AOL开发了一种叫做PageTest的立即开放源代码工具。所有这些工具都通过一组准则来评判Web网站性能,不过这些准则都无 法与Yslow的22条准则规范相比。

阅读(306) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~