为什么Chrome缓存请求需要时间?

Sri*_*iks 5 performance caching google-chrome google-chrome-devtools

即使Chrome在网络选项卡中缓存静态文件(JS,图像等),这些文件也需要一段时间,如下图所示.在此输入图像描述

许多缓存文件的加载时间仅为0毫秒.有人可以告诉我即使文件是从缓存加载,为什么他们加载> 0毫秒?

Gid*_*zer 5

乍一看,Chrome 花时间下载资源,即使它们来自缓存,这看起来确实很奇怪。这不是您所看到的从网络服务器下载所花费的时间。相反,我认为这是从本地数据库缓存下载所花费的时间。

任何数据的检索都涉及一定的成本。这些资源本质上存储在 Chrome 的数据库中,检索数据需要查找,但不是即时的。除了在表中查找数据之外,还可能需要进行一些处理才能将正确的数据推送到内存中,因为数据并不完全按照其使用方式存储。它很可能被压缩,并且解压缩数据可能是一个缓慢的过程。

您可以在“网络”选项卡中看到,尽管检索某些资源似乎需要 0 毫秒,但当您查看“计时”选项卡时,您会发现它实际上是向下舍入的。例如,我在下面的请求中看到 0.08 毫秒停滞和 0.02 毫秒下载,尽管网格中显示 0 毫秒。

不是即时的

更新:

我进一步研究了这一点,发现 Chrome 扩展似乎对缓存和网络的检索时间都有影响,特别是那些将内容注入页面的扩展。Adblock 似乎是导致我延迟的原因 - 上面的解释仍然非常适用于其余部分。