谷歌浏览器从缓存中加载图像比下载慢

7
我正在构建一个用于浏览本地服务器上大型照片的Web应用程序。
奇怪的是,Chrome从缓存加载图像的时间太长了,甚至比从本地服务器下载还要长。
每张照片约为5Mb,Chome下载它需要约200ms,但从缓存中读取需要约400ms。
下面是屏幕截图: enter image description here 我的环境是Mac OSX 10.8.4,并且我已在PC上进行了测试-它需要约700ms。
这里是test on jsfiddle
我找不到网上有这样大小的图片,所以您可能需要使用fiddle2或Charies将这些图片映射到您自己的本地图片。并重写标题以使Chrome对其进行缓存:
Expires:Wed, 17 Jul 2013 01:50:08 GMT
Cache-Control:max-age=604800
Connection:keep-alive
Date:Wed, 10 Jul 2013 07:33:51 GMT
Last-Modified:Wed, 10 Jul 2013 01:13:26 GMT

顺便说一下,我的火狐浏览器运行得更好,而Safari是最好的。 - ipoly
今天我用一些小图片进行了测试,大约800Kb大小,尺寸相同(2000x3000),并且我使用CSS不透明度来切换图片而不是src。但仍然非常缓慢。最后,我使用CSS显示来切换图片,效果看起来更好。因此,我认为问题在于Chrome的图形性能。 - ipoly
1个回答

0

虽然不是非常有用,但我解决这个问题的方法是将图像编码为数据URI。复制图像(就像我一样)或从缓存中提取图像需要大约10-50毫秒。

如果您通过AJAX加载图像,则必须注意CORS问题,但如果您在服务器端加载它们,则只需确定是否可以内联它们而不会使页面加载时间过长。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接