写点什么

Google 提出 Web 性能优化新方法——Diffable

  • 2010-08-12
  • 本文字数:692 字

    阅读完需:约 2 分钟

Google Maps 的开发人员 Josh 和 James 最近提出并实现了一种 Web 性能优化新方法—— Diffable ,即在浏览器加载 Web 页面时,促使其比较相关文件(Html、JavaScript 等)在服务器端和客户端缓存区的版本并只下载差量(Deltas),降低网络下载造成的延迟。本文简要介绍了 Diffable 方法的背景、原理、优势和实现情况。

背景

众所周知,Google Maps 是一款“重量级”的富互联网应用,主要 JavaScript 文件大小接近 300K,而一个平常的补丁更新只有不到 20K,这意味着如果用户的浏览器已经缓存了旧版本的 JavaScript 文件,那么在通常情况下,用户不得不下载多余的 280K(内容没有变化),页面加载速度就会受此影响。为了解决类似问题,Google Maps 的工程师提出了 Diffable 方法。

原理

Diffable 方法需要在服务器端和客户端同时实施,如图 1 所示。

  • 服务器组件记录网页相关文件版本更新的差量,以便在客户端需要时向其发送补丁以更新过时的缓存文件。
  • 客户端组件(采用 JavaScript 编写)检测是否缓存了过时文件并在必要时请求新版本的差量补丁,与缓存的文件合并完成更新。

性能优势

对于 Google Maps 来说,Diffable 方法节省了 1200 毫秒(减少页面加载时间的 25%),请注意这种方法只对已经缓存旧版页面文件的 Google Maps 用户有效,此类用户约占全部用户的 20%-25%,参见图 2 所示:

实现

Diffable 方法是一种 Web 性能优化思想,目前 Google 的开发人员已经针对 J2EE 应用完成了相应的开源实现,采用 Apache License 2.0 授权,具体细节可以参考以下文档:

感兴趣的朋友可以登陆 Diffable 开源项目官方网站了解更多详情。

2010-08-12 08:527883
用户头像

发布了 501 篇内容, 共 262.6 次阅读, 收获喜欢 61 次。

关注

评论

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

macos big sur 软件icons图标大全(新增至2719枚大苏尔风格图标)

理理

架构的真相:熵减

原力架构

#架构

AOP中动态代理详解

EquatorCoco

Java

2024 最新Java 面试突击大全,带你摸熟 20+ 互联网公司面试考点

采菊东篱下

Java 编程 计算机

SnailSVN Pro for Mac:SVN操作,一键搞定!

理理

CAD尺寸标注如何隐藏与显示?

在路上

cad cad看图 cad软件

数据要素如何助力智慧社区建设

郑州埃文科技

数据要素

数据资产入表 解锁智慧城市新潜力

郑州埃文科技

数据要素 数据要素流通

GitHub点赞81.6K,阿里巴巴内部 Java 突击手册正式开源

采菊东篱下

Java 编程 面试

告别繁琐切换!ShareMouse for Mac,多电脑协同工作更轻松!

理理

智源评测出炉:豆包大语言模型排名第一,多模态能力获得三项第二

Geek_2d6073

文献写作管理软件 EndNote X9汉化激活码

理理

精选 2024 互联网大厂 Java 核心面试题库(金三银四面试必备)

架构师之道

编程 计算机 java面试

什么是新质生产力

郑州埃文科技

新质生产力

我们为什么需要数据资产入表?

郑州埃文科技

数据要素

AnyTrans 8 for mac(专业的ios数据传输工具)中文激活版

理理

CAD跨图纸复制与粘贴怎么操作?教程来了

在路上

cad cad看图 cad软件

个人开发者,还能入局抖音直播小玩法吗?

北桥苏

直播小玩法 弹幕小游戏

Disk Drill Pro破解版 专业数据恢复软件

理理

项目中有高并发的挑战吗?并发量多少?用什么方案怎么做的?

王中阳Go

在香港吃饭必不可少的“OpenRice”,也有原生鸿蒙版了!

最新动态

iCHM Reader for Mac,轻松阅读CHM文件

理理

QCN9074 and RK3588: Wallys' AI-Driven Industrial Solutions

wallyslilly

QCN9074 QCN9024 RK3588

Cursor Pro for mac(鼠标指针放大高亮工具)v2.4激活版

理理

NTFS Disk by Omi NTFS for mac(NTFS 磁盘管理器)

理理

小红书笔记详情API接口的开发、应用与收益

科普小能手

数据挖掘 小红书 API 接口 API 测试 小红书笔记接口

coconutBattery Plus for Mac 苹果电脑电池健康守护者

理理

【论文速读】| Pipe-Cleaner:使用安全策略的灵活模糊测试

云起无垠

Google提出Web性能优化新方法——Diffable_Java_崔康_InfoQ精选文章