Sealyu

--- 博客已迁移至: http://www.sealyu.com/blog

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  618 随笔 :: 87 文章 :: 225 评论 :: 0 Trackbacks

作者 Abel Avram 译者 霍泰稳 发布于 2009年7月5日 上午10时38分

社区
Architecture
主题
互联网,
性能和可伸缩性
标签
Google,
社区

在几周前将网页加速工具开源后,Google又发布了一个网站,意在探寻更多的方法,并推动全互联网的加速进程。这次Google分享了研究数据、网站加速优化指南、有关性能的录制视屏、大量性能优化工具的介绍,以及一个讨论组,期望所有人都能在此分享如何使网页更快的创意。

Google研究部门针对网页装载速度如何影响用户的搜索结果做了一个研究,在数据响应阶段他们引入了几个可控的延迟:

gr1

在引入这些可控延迟,并对用户监视了4-6周之后,他们在搜索结果数字中发现了如下问题:

image

虽然0.5%的损失对一般人并不意味着什么,但是Google确信这样的损失对他们来说意味深远,因为在用户执行搜索的数字、广告点击显示的数字以 及收入之间有着直接的关联。除了加速自己的Web服务器,考虑到这样做对其他人也有着积极的作用,Google还想加速全部互联网。

Google认为,除了带宽限制,还有其他多方面的因素导致了互联网的慢速:

  • 在Web开发中,网站没有遵循最佳实践,导致不必要的慢速;
  • Web服务器经常没有专为速度而优化;
  • 几个互联网协议是在10年或者15年之前设计的,那时候的网站和Web应用和现在大不相同;
  • 浏览器也是最近才开始关注速度,很多互联网用户还在使用慢速的浏览器。

那么对Google来说,互联网速度应该快到什么程度?从一页导航到另一页的速度应该和翻一页杂志的速度相当;允许视频和图像内容尽可能快;用户之 间的实时协作不能因链接而延迟,包括移动用户等。等等这些,Google想看到HTML得到优化,这一点在HTML 5里也已经得到体现,但是他们还希望优化甚至用一些更好的东西改变HTTP和TCP。然而,考虑到要在目前的基础设施中做这样巨大的投资,这个改变还相当 难以实现。

为了指导其他人如何加速他们的网站,Google提供了如下一些指南:

他们还从各种信息源收集到以下一些工具:

  • Page Speed(网页加速工具):这是一个开源的Firefox/Firebug插件。网站管理人员和Web开发人员可以使用网页加速工具估算自己网页的性能,并得到如何优化这些网页的建议。
  • AOL Page Test(AOL网页测试):这是一个用来测量和分析使用IE时网页性能的开源工具。
  • Cuzillion:该工具能够快速构建网页,并发现组件如何交互。每天,浏览器都会有各种无法预料的行为,有时因为浏览器不同,行为也各异。Cuzillion能够让你发现这些行为,并和其他人分享示例网页。
  • Fiddler 2:这是一个Web调试代理工具,能够记录计算机和互联网之间的所有HTTP流量。Fiddler让你能够监测到所有HTTP流量,设置断点,虚拟流入和流出数据。Fiddler有一个强大的基于事件的脚本子系统,能够使用任何.NET语言进行扩展。
  • Firebug:Firebug和Firefox相集成,让你在浏览网页时就能使用多个开发工具。你可以编辑、调试、监视任何Web页面的CSS、HTML和JavaScript代码。
  • Hammerhead:Hammerhead给Firebug增加了一个Tab,用来测量网页的装载时间。
  • httperf:这个工具能够用来测量Web服务性能。它提供了一个用来创建不同HTTP工作量和测量服务器性能的功能。Httperf的重点不是实现一个特定的标准,而是提供一个自动的、高性能的工具,以帮助构建微观和宏观层面的标准。
  • HttpWatch:这是一个HTTP浏览器和调试器,和IE以及Firefox相集成,在浏览器窗口的配合下,对HTTP和HTTPS进行无缝监视。
  • IBM Page Detailer(IBM网页设计器):一个图形工具,让Web站点开发人员和编辑快速而准确地从客户角度估算网页性能。IBM网页设计器提供了网页从何处被传递到Web浏览器的行为细节。这些细节包括时间、大小,以及一个网页中每个条目的身份。
  • JSLint:一个JavaScript项目,用来查找JavaScript程序中的错误,是一个代码质量工具。
  • JSMin:一个过滤器,可以从JavaScript文件中清除评论和不必要的空白。
  • Microsoft VRTA(Visual Round Trip Analyzer):VRTA工具帮助Web开发人员和测试人员可视化网页下载、寻找最佳实践和改变,以优化Web性能。VRTA检查通讯协议、定位往返过多的原因,以及推荐的解决方案等。
  • mon.itor.us:提供个性化的Ajax仪表盘界面,检查服务器性能和有效性,创建运行时间报告,跟踪访问者,检查CPU、内存和其他系统资源,并在监测到异常时给用户报警。
  • OOCSS:允许开发者撰写快速、可维护、基于标准的前台后台代码。
  • Pylot:一个用来测试Web服务性能和可扩展性的开源工具。它运行HTTP载入测试,这在容量规划、标准、分析和系统调整时都很有作用。Pylot生成并发载入(HTTP请求)、验证服务器响应和产生数据报告。
  • Smush It:使用图像格式特定无损图像优化工具,挤出你图像中的所有冗余字节——还不改变他们的外观和可视质量。通过优化图像,你可以得到一个所节省字节多少的报告,所有修改的图片也可以作为一个单一zip包下载。
  • Wbox: 该工具意在当你测试HTTP相关文件时,能够多些乐趣。用它可以执行很多任务,包括:为Web应用、Web服务生成内容所用的时间,Web应用负载,无需 改变本地解析器测试虚拟主机配置,在发出正确的HTTP代码的情况下检查重定向是否工作正常,测试HTTP压缩是否正常工作以及是否让服务器页面更快,将 其作为一个配置少的HTTP服务器来分享文件。
  • Yahoo! YSlow:用来分析网页,并基于一套高性能Web页的规则,给出提高性能的方法。YSlow是一个Firefox插件,和Firebug Web开发工具相集成。
  • YUI Compressor:一个JavaScript压缩器,用来生产比其他大多数工具更高压缩比的文件。

最后,Google加速网站包含了一个讨论组,任何人都可以在此分享他们的技术和创意,以用来加快网页的访问速度。

InfoQ网站上相关内容链接:Google开源网页加速工具Page Speed

查看英文原文:Google Calls for a Joint Effort to Speed Up the Internet

posted on 2009-07-06 08:59 seal 阅读(235) 评论(0)  编辑  收藏 所属分类: 综合

只有注册用户登录后才能发表评论。


网站导航: