Size/Content Chrome 网络工具中的列显示 Amplience CDN 的不一致结果

Size/Content Column in Chrome Network Tool showing non consistent results for Amplience CDN

附件是来自 Google Chrome 同一网站的网络工具的三个屏幕截图。

它们被过滤以显示来自 Amplience CDN 的图像

Size/Content 列中显示的结果各不相同,我正在尝试了解原因。

每个屏幕截图都是从返回用户的角度截取的。因此图像应该来自缓存。

屏幕截图 1 - 显示磁盘大小和传输大小之间的巨大差异。 屏幕截图 2 - 显示其中一张图像现在未缓存 屏幕截图 3 - 现在显示术语(来自缓存)。

我的问题是:

  1. 截图1为什么没有说(from cache)?屏幕截图 3 中没有发生的少量传输大小发生了什么?

  2. 为什么一张图片突然没有缓存?

我的回复:

  1. In screenshot 1, why does it not say (from cache)? What is happening in the small amounts of Transfer Size that is not happening in screenshot 3?

如果显示 "Status",您可能会看到“304 未修改”。在这种情况下,使用了缓存 AND 使用了网络。向服务器发送了一个请求,响应仅包含 header 个 257 字节长的文件。

  1. Why is it that one image is suddenly not cached?

可能有很多原因,因此在没有更多信息的情况下很难回答。

  • 可能是您要求 "hard refresh" (Ctrl + Shift + R)。
  • 可能是响应中包含的 "Age" header 比 "Cache-Control: max-age=xxx" 大,或者 "Date" header 太远了过去。
  • 我还可以想到浏览器发送带有 "If-modified-Since" header 或 "Etag" header 的请求的情况,而您的服务器(在您的情况下CDN 服务器)并不都以相同的信息响应。
  • 浏览器有时会从缓存中删除内容,通常是在需要为其他文件创建 space 时。