单个网页上有多个Flash对象?

时间:2009-02-10 11:09:58

标签: html flex flash streaming load

如果单个网页会加载10个相同的Flash对象,是否有重大性能/加载时间影响? 20? 30?..关于此类设置可持续性的任何证据数据?

这将是相同的Flash应用程序,每个实例都提供自己的流。

4 个答案:

答案 0 :(得分:1)

肯定会有一些开销,因为每个swf中都包含一定数量的代码,无论它是开发人员创建的内容。

我几乎可以肯定会出现速度问题,这会导致帧速率下降到您添加到页面的swfs中。

说实话,这个概念闻起来有点可疑,我认为必须有一个更好的解决方案来解决你的问题。

修改

另外,对于每个域有两个来自http的流量是有限制的。当然你可以解决这个问题,但这绝对是一个问题。

答案 1 :(得分:0)

我发现this post可能有所帮助。诀窍是使用SWFObject嵌入您的swf文件。

  

我今天遇到了一个奇怪的问题。在Muziboo的音乐排行榜页面上,我正在右侧显示歌曲列表和播放列表。每首歌都有一个在OpenLaszlo中完成的小按钮播放器。在Firefox中,一切都很好,在IE中(并非异常),页面会冻结一段时间。这将发生一次,只有在我删除缓存并重试时才重复。我用谷歌搜索了一下,并了解到嵌入的好主意是给每个swf一个唯一的id,否则浏览器行为不端。然后我继续使用swfobject嵌入swf文件,一切都开始工作了!

答案 2 :(得分:0)

是的,如果你在那条路上走得太远,它可能会使浏览器无法使用。

如果你想处理多个流,或许将所有可能的小程序组合成一个巨大的小程序可能会更好。它肯定会抵消你对10-40个小打手的严重开销。

如果这是一个音乐播放器,你想要认真看看做一些JavaScript远程处理。通过JS控制Flash应用程序是相当简单的,因此您可以拥有标准的HTML / CSS控件,而无需加载十亿个闪存实例。

答案 3 :(得分:0)

设计明智这听起来像个坏主意。您将在浏览器中运行Flash播放器的多个实例,每个实例都有单独的成本,主机(在本例中为浏览器)将在同一个线程上运行所有这些实例(除了某些选择性异步)过程),所以你几乎肯定会遇到各种问题 - 抖动播放,UI阻塞,处理器负担,内存膨胀,主机不稳定等等。

除非主权财富基金非常小,并且做得很少,否则它似乎只是一种设计问题。事实上,你可以相当容易地测试这样的事情;你有没有进行任何测试?好奇。

对要求也很好奇;如果我们对你的目标有更多了解,我们或许可以提供更具建设性的选择。您是否考虑过将所有SWF加载到单个容器SWF中,只需要一个浏览器托管的Flash播放器实例?