如果两个视频同时有相同的源流,它们是否会有单独的缓存文件?

如果两个视频同时有相同的源流,它们是否会有单独的缓存文件?

我正在解决一个问题堆栈溢出也请参阅我的回答),我可能会在两个单独的视频元素中在同一网页上播放同一个视频。我不太了解网络文件缓存,但我知道浏览器通常可以判断您是否之前下载过文件,因此它会显示缓存的文件以提高页面加载速度。

我的问题是,在同一页面上有两个视频元素同时播放同一视频的情况下,浏览器是否会“意识到”这一点,还是会生成两个缓存文件并有效地下载两次视频文件?我认为不会,但我只是想确定一下。


对于我个人的设置,我将从 Amason S3 或 CloudFront 流式传输视频文件。我的网站目前通过 bluehost 托管。

答案1

最好的猜测是浏览器将下载两次,并且任何避免第二次下载的优化都将针对特定浏览器。

然而,这应该是一个很容易测试的事情,我刚刚就这么做了:)

使用 Firefox 浏览器和 JW Player,视频会同时加载两次。浏览器和 Flash 都不够智能,无法优化这种特殊情况。

以下是我在 Firebug 中看到的内容: Firebug 网络选项卡的屏幕截图

服务器日志还确认了两次下载:

X.X.X.X - - [29/Jan/2015:22:52:57 -0600] "GET /videos/PCA-MasterTradeShowa800x.f4v HTTP/1.1" 200 31818277 "http://.../videos/jwplayer/player.swf" "Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0 Iceweasel/31.4.0"
X.X.X.X - - [29/Jan/2015:22:52:56 -0600] "GET /videos/PCA-MasterTradeShowa800x.f4v HTTP/1.1" 200 31818277 "http://.../videos/jwplayer/player.swf" "Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0 Iceweasel/31.4.0"

Chrome 中的开发者工具似乎显示两个单独的下载:

在此处输入图片描述

相关内容