【问题标题】:Firefox 3.6.28 assets load from cache slower than from serverFirefox 3.6.28 资产从缓存加载比从服务器加载慢
【发布时间】:2013-11-01 18:02:30
【问题描述】:

我发现我的网页的 js/css 文件从 Firefox 3.6.28 中的浏览器缓存加载太慢了。

直接从服务器加载所花费的时间要少得多。

这是 Firebug 网络面板显示从服务器加载所花费的时间:

这是从缓存中加载所花费的时间(灰色表示它是从缓存中获取的):

我知道 Firefox 3.6.28 太老了,最新版本的 Firefox 没有这样的问题。

但是为什么老版本的火狐从缓存中加载一个1kb的js会导致500+ms呢?

我的 Firefox 的磁盘和内存缓存正在打开。

我的电脑环境是:

CPU:Intel atom 230 1.6G 内存:1G

谁能给我解释一下?

谢谢。

【问题讨论】:

  • 看起来好像没有从缓存中获取任何内容,在这种情况下,响应应该是304 Not Modified。看看stackoverflow.com/questions/3526632/…
  • @Pavlo 我确实怀疑这不是从缓存中获取的,但它是旧版本的 Firebug,我发现当它是灰色(不是黑色)时,它确实从缓存中加载。当我使用HTTPWatch,显示js是从缓存中加载的。
  • 该版本的 Firefox 仍然不受支持(生命周期结束)。真的不可能告诉你为什么你的缓存很慢,但我的猜测是缓存位置很慢(网络驱动器,磁盘碎片,慢/预故障磁盘,磁盘空间)或者你的可用物理内存很低所以内存缓存被(反复)交换到(慢)磁盘。
  • @nmaier Thx。我同意你的猜测。但是,我禁用了内存缓存或磁盘内存,找不到任何特殊情况。我的物理内存足够了。

标签: performance firefox caching


【解决方案1】:

终于,我知道为什么这么慢了。

首先,正如@nmaier所说,它是旧版本的Firefox,所以它的速度很慢。即使在我的PC(i3 / 4G RAM)上,这个版本的Firefox也要花费100~200ms来从缓存中读取。

但500+ms发生在性能不佳的机器上(CPU:Intel atom 230 1.6G RAM:1G,是放置在大楼等待客户的特殊PC,所以性能很差)。

但是,我们的系统是基于大量的ajax来加载div内容,当ajax从服务器获取html时,html可能包含js脚本,那么,浏览器正在重建DOM并重新显示页面,它正在阅读同时从缓存中提取文件。这对 Firefox 3.6 来说是一项非常庞大的工作。

所以时间太慢了。

【讨论】:

    猜你喜欢
    • 2013-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-16
    • 2017-06-06
    • 1970-01-01
    • 2019-12-20
    相关资源
    最近更新 更多