对于我的数据密集型Web应用程序(繁重的表单和复杂的报表),从性能的角度来看,哪个更好...基于浏览器插件的RIA(比如SilverLight)或基于Java Script的RIA(比如说ExtJS)?
此时,我们可以避免讨论插件可用性等。我唯一关注的是性能。推理将不胜感激。
答案 0 :(得分:2)
计算上,与Javascript相比,Silverlight将胜出,没有竞争,尤其是Silverlight 4(计算速度快两倍)。但我认为原始数字处理性能不一定是最重要的,Chrome的Javascript引擎比IE8快10倍,但ExtJS中的Web应用程序的响应速度不是近10倍。对象模型的操作速度似乎更为重要,而HTML似乎在这里处于劣势,因为它并不是真正构建用于ExtJS中的网格等复杂控件。
如果你看一下ExtJS网格here生成的HTML,它会从网格的最外面的容器到单元格的内容深入13层。所有这些层都欺骗HTML和CSS做正确的事情。
虽然我猜测了一下,但是理所当然地说Silverlight的对象树更加平坦,因为它可以 来构建它所做的事情。再加上Silverlight的硬件加速,它肯定会在性能部门中胜出,但不管怎样,我还认为使用像ExtJS这样的框架时性能不是很快的瓶颈。通常,它仍然足够快。
答案 1 :(得分:0)
很难说因为它取决于很多变量。但您可能想查看Bubblemark。在该特定基准测试中,Silverlight 3.0(启用了位图缓存)运行良好,但很大程度上取决于您使用的浏览器。使用Chrome的Javascript非常接近Silverlight的渲染性能。另请参阅http://www.youtube.com/watch?v=gqjidzjkMM0。
如果您使用Silverlight并且可以使用Net.TCP访问您的WCF后端,那么您也可以获得非常好的数据访问性能。我希望它比JavaScript快一些(因为它没有HTTP开销),但我不知道它与通过RTMP访问FMS相比如何。