浏览器(例如:Chrome)可以在缓存中存储的最大数据量是多少?

问题描述 投票:0回答:1

我正在处理 PBI 报告,该报告可通过浏览器访问。我可以看到加载报告的查询在第一次访问时被缓存,这使得第二次加载速度更快。但是,如果我进行多次交互(选择切片器、过滤器和打开子报告)并打开其他 2-3 个报告并执行上述相同操作,然后返回到第一个报告,我可以看到查询请求再次被触发,而不是从浏览器缓存加载它。这意味着我可能已达到缓存限制。

请注意,我的报告本身的查询请求在响应中没有任何 Cache-max Age 标头。

我希望它有某种缓存限制设置(可能适用于所有浏览器)。如果已设置,该值是多少?我可以更改该值以增加浏览器缓存吗? ?

从Chrome浏览器的缓存设置中我可以看到图像和文件的最大缓存大小始终在320MB以内。这是所有浏览器的共同限制吗?

google-chrome caching browser
1个回答
0
投票

缓存大小

不同浏览器的缓存功能不同。每个浏览器通常没有明确的“规则”,并且缓存限制和功能在设备和浏览器之间可能有所不同。

您说过最大缓存大小为 320MB。对于您的设备来说,这可能始终如此,但如果您检查不同的设备或配置不同的设置,情况就会改变。 Chrome 通常使用大于 320MB 的缓存大小,根据用户的硬盘空间,甚至可以达到千兆字节。 Microsoft Edge 和 Firefox 的功能非常相似。

Safari 的缓存有点混乱,因为 iOS 对其进行了限制以优化设备性能。 Firefox 也使用动态缓存,但是是可配置的(如下所述),并且您可以比 Safari 缓存更清楚地跟踪其大小。

增加缓存大小

您可以增加 Chrome 上的缓存大小。您无法在任何常见浏览器上调整最终用户的缓存大小。

对于 Chrome,您可以使用以下步骤轻松更改本地缓存:

  1. 启动 Chrome
  2. 右键单击 Chrome 图标
  3. 右键单击显示“Google Chrome”的行项目
  4. 点击“属性”
  5. 导航到“快捷方式”选项卡
  6. 单击“目标”框
  7. 将此添加到行末尾:-disk-cache-size=2147483648

在 Windows 上,现在将显示为

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disk-cache-size=524000000

这会将缓存设置为大约 524MB,但可能不是该值,如此处所述; Chrome 将其视为缓存大小应为多少的“提示”。将其增加到一个很大的值似乎是可取的,但回报会递减,并且如果太大,实际上可能会抑制性能。

要更改 Firefox 上的缓存大小,请参阅本文

您可以通过 GUI 更改 Microsoft Edge 中的缓存大小,如此处所述。

标题

您说过您没有将

Cache-Control: max-age
设置为标题,但这样做可能会有所帮助。例如,如果您希望缓存持续 24 小时,您可以执行
Cache-Control: max-age=86400
。请记住,如果您加载动态内容但告诉浏览器将内容保留整整 24 小时,则可能会遇到问题。如果您有真正的静态内容,您可以根据需要缓存它;相反,真正的动态内容通常会用
Cache-Control: max-age=0
设置。

优化缓存的 PBI 报告

如果缓存对您很重要,您可以相应地设计您的 PBI 报告。

  1. 使用聚合来减少需要查询和传输的数据量
  2. 通过预先计算度量来优化查询
  3. 通过排除不相关数据来最小化数据大小
  4. 使用性能分析器了解 PBI 报告的哪些部分使用的资源最多
© www.soinside.com 2019 - 2024. All rights reserved.