Chrome 每个网站都占 590MB?一次存储迷案的排查过程

起因:一个吓人的弹窗

某天打开 Chrome,弹出提示要求清理存储空间。打开 chrome://settings/content/all(按已存储数据排序),看到了一个诡异的画面:

几乎每个网站都占用了 ~590MB。

notion.so 占了 4.7GB(这个还算合理),但 arrae.com 594MB、vrdesktop.net 593MB、shopify.com 592MB… 连 cursor.com 都是 590MB。

总计 85.6GB。

第一反应:这不科学。一个电商网站凭什么在我本地存 590MB 数据?

排查第一步:Storage API 说「我没有」

用 JavaScript 在几个网站上跑了 navigator.storage.estimate()

const estimate = await navigator.storage.estimate();
console.log((estimate.usage / 1024 / 1024).toFixed(2) + ' MB');
网站Storage API 报告Chrome 设置显示
arrae.com0.01 MB594 MB
claude.ai0 MB596 MB
youtube.com0.1 MB595 MB

Storage API 涵盖了 IndexedDB、Cache API、Service Worker 存储 —— 基本上是网站能主动写入的所有数据。结果几乎为零。

排查第二步:quota-internals 揭示真相

打开 Chrome 的内部诊断页面 chrome://quota-internals

Total Storage Usage: 3,114,883 B(约 3MB)

所有网站的实际 Web 存储加起来才 3MB。

Chrome 设置报告的 85.6GB 里,99.99% 是 HTTP 缓存(网页图片、JavaScript、CSS 等浏览器自动缓存的文件),不是你在网站上填写的表单、文档或任何个人数据。

为什么每个网站都是 ~590MB?

Chrome 从 115 版本开始启用了 缓存分区(Cache Partitioning)。简单说:

  • 以前:所有网站共享一个 HTTP 缓存池
  • 现在:每个顶级站点有自己独立的缓存分区

这意味着,如果你安装了某个 Chrome 扩展程序,它存储了约 590MB 的数据(比如广告过滤规则库),Chrome 可能会把这份存储分别计入每个它注入过的网站

于是你就看到了每个网站都是 ~590MB 的「奇观」。

插曲:YouTube 突然「断网」

排查存储问题的同时,YouTube 突然显示「连接到互联网 —— 你没有联网,请检查网络连接」。

但诡异的是:

  • 左侧边栏完全正常(订阅列表、历史记录都在)
  • 其他网站访问正常
  • 打开新 Tab 访问 YouTube → 正常加载

这说明不是真的断网。

根因:当时正好在下载并安装另一个浏览器(一个 AI 浏览器),安装过程中需要授予系统级网络权限。macOS 在授权 Network Extension 时会短暂重置网络栈(通常 1-3 秒),足以让正在加载的页面请求失败。

YouTube 的 Service Worker 检测到网络请求失败后,展示了缓存的离线页面 —— 而且不会自动恢复,需要手动点「重试」或开新 Tab。这就是为什么旧 Tab 卡在离线页面,新 Tab 却正常。

那个「删除所有数据」按钮安全吗?

回到最初的问题。答案是:可以放心点。

清除的内容:

  • HTTP 缓存(占了 99.99% —— 就是那些虚胖的 590MB)
  • Cookies(会退出所有网站的登录)
  • localStorage / IndexedDB(网站的本地偏好设置)

不会清除的内容

  • Notion 文档(存在 Notion 服务器上)
  • Google Docs 内容(存在 Google 服务器上)
  • 任何云端服务的数据
  • 浏览器书签、密码、历史记录

所有现代在线工具(Notion、Google Docs、Figma 等)都是云端存储,浏览器里的只是缓存副本。删掉后重新登录,数据会从服务器重新加载。

总结

现象真相
每个网站占 590MBHTTP 缓存 + 扩展存储被分区计数膨胀
总计 85.6GB实际 Web 存储仅 3MB
YouTube「断网」安装新软件时 macOS 短暂重置网络栈
删除数据会丢文档?不会,云端数据完全不受影响

排查工具备忘

  • chrome://settings/content/all — 查看各网站存储占用(包含 HTTP 缓存,数字偏大)
  • chrome://quota-internals — 查看真实的 Web 存储用量(不含 HTTP 缓存)
  • navigator.storage.estimate() — JavaScript API,查看当前网站的实际存储

如果这篇文章对你有帮助,欢迎请我喝杯咖啡,支持我继续创作更多内容。

Buy me a coffee