探索 Chrome 的往返缓存

艾迪·奥斯曼
Addy Osmani

Chrome 团队正在探索新的往返缓存,以便在用户离开网页时在内存中缓存网页(保留 JavaScript 和 DOM 状态)。这绝非易事,但如果成功,将会来回导航 非常快。

往返缓存 (bfcache) 会在用户离开某个网页时缓存整个网页(包括 JavaScript 堆),以便在用户返回时恢复网页的完整状态。您可以将其视为在离开网页时暂停网页,并在返回时播放。

以下是往返缓存的早期原型,可以先了解一下在桌面设备上的实际运作情况:

我们还在 Chrome(Android 版)上预览了往返缓存:

我们预计这项变更可以为提升高达 19% 的移动版 Chrome 导航性能。如需详细了解此功能,请参阅 bfcache 说明

此项变更存在中等的跨浏览器互操作风险。FirefoxSafari 都已经具有略有不同的往返缓存实现。由于与 Chrome 的多进程架构不兼容,Chrome 选择不使用 WebKit 的 bfcache 实现。

我们在 blink-dev 上提供了实现往返缓存的正式意图,任何人都可以在这里参与讨论。

感谢 Arthur Sonzogni、Alexander Timin、Kenji Baheux 和 Sami,他们帮助我们制作出原型视频。