QCon 全球软件开发大会(北京站)门票 9 折倒计时 4 天,点击立减 ¥880 了解详情
写点什么

Google 号召社区力量为互联网加速

2009 年 7 月 05 日

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

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

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

虽然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

2009 年 7 月 05 日 10:384798

评论

发布
暂无评论
发现更多内容

知道Python中的字符串是什么吗?

华为云开发者社区

Python 编程语言 字符串 字符

融云 IM SDK 转 AndroidX

融云 RongCloud

IM

Sentinel流量控制&服务熔断降级详解

Java王路飞

Java 程序员 面试 微服务 降级

Linux 高并发服务器 select/poll实现

赖猫

Linux linux编程 linux开发 Linux服务器开发

Spring boot集成plumelog日志系统

周老师

Java spring 编程 程序员 架构

面试其实并不难!今年金三银四我靠着这份面试题跟答案,我从14K变成了28K!

Java王路飞

Java spring 程序员 面试 分布式

高质量、高并发的实时通信架构设计与探索

融云 RongCloud

架构 通信

融云即时通讯SDK集成 -- FCM推送集成指南(Android平台)

融云 RongCloud

即时通讯

超硬核!啃完这些互联网Java面试高频宝典,成功定级阿里P7

Java成神之路

Java 程序员 架构 面试 编程语言

嵌入式技术与人工智能有什么关系?

cdhqyj

人工智能 嵌入式 系统 科技

OpenKruise v0.8.0 版本发布:K8s 社区首个规模化镜像预热能力

阿里巴巴云原生

容器 云原生 k8s 安全 应用服务中间件

惊喜!Alibaba架构师终于发布“微服务架构:权威指南-第一本微服务书”文档

Java成神之路

Java 程序员 架构 面试 编程语言

Java中的枚举,这一篇全了,一些不为人知的干货

程序员小毕

Java 程序员 架构 面试 枚举

写作的意义

ES_her0

28天写作 3月日更

你的终端从未如此优雅

Kareza

终端工具 3月日更 Hyper

技术债是什么、怎么还?你想知道的都在这一篇文章里了!

禅道项目管理

技术 技术债 问题

叹服!微软自爆虐心405页程序员面试通关手册,Github上已获赞75.6K

Java架构之路

Java 程序员 架构 面试 编程语言

助我拿到37KOffer,这份阿里巴巴890页Redis笔记可谓功不可没

Java架构之路

Java 程序员 架构 面试 编程语言

Redis和Memcached的区别

赖猫

redis memcached 服务器开发 Linux服务器开发

你的终端从未如此高效

Kareza

3月日更 Oh My Zsh

对标阿里P7Java架构师面试题,已助我拿下字节、蚂蚁、滴滴三家Offer

Java架构之路

Java 程序员 架构 面试 编程语言

【数独问题】经典面试题:解数独 ...

宫水三叶的刷题日记

LeetCode 数据结构与算法 面试数据结构与算法

融云集成之避坑指南-Android推送篇

融云 RongCloud

音视频

DataPipeline亮相“2021科技助力湾区数字金融发展峰会”,解锁“实时数据管理”密码

DataPipeline

并发编程-原子操作CAS

赖猫

c++ 高并发 并发 CAS Linux服务器开发

谷歌大脑团队官方推荐,用浏览器实现深度学习的「黑科技」教程来了!

图灵社区

JavaScript 人工智能 机器学习 深度学习 前端

融云即时通讯SDK集成 -- 国内厂商推送集成踩坑篇(Android平台)

融云 RongCloud

即时通讯

阿里P8内部架构核心学习知识笔记在各大互联网上流传,限时开放下载

Java成神之路

程序员 架构 面试 编程语言 Javav

为啥你一入场就开始跌呢?聊聊长期主义

池建强

长期主义

WebRTC服务器模型

赖猫

音视频 WebRTC

San CLI 的实现原理

百度Geek说

cli service san command

边缘计算隔离技术的挑战与实践

边缘计算隔离技术的挑战与实践

Google号召社区力量为互联网加速-InfoQ