Silverlight应用程序的带宽

时间:2010-06-02 21:30:07

标签: silverlight silverlight-4.0

我想要构建一个简单的Microsoft Visio在线版本。该应用程序将使用silverlight功能构建。人们将能够设计类似于他们在Visio中的工作方式的流程图,他们将能够在设计上进行协作和同时工作。

现在,我需要了解应用程序可能消耗的带宽。我不确定silverligt内部是如何工作的,所以我需要了解这样的应用程序是否可以通过一种方式构建,使得在软件中作为服务模型销售这样的产品在经济上是可行的。

2 个答案:

答案 0 :(得分:0)

我认为你应该首先构建应用程序,然后担心定价,如果你的应用程序是好的,你的用户喜欢它,他们将支付你使用它的任何合理的价格:)

答案 1 :(得分:0)

您必须考虑两个带宽成本:

1)Silverlight应用程序

您的用户在启动时必须下载Silverlight应用程序(XAP文件)。这些文件非常紧凑,主要是压缩的托管程序集,但是如果在应用程序中包含大量二进制数据(比如图像),这将会加起来。

要降低应用程序下载的初始成本,您可以将应用程序拆分为多个程序集,并让其中一些程序集仅按需加载。

对于您的应用程序,您还可以考虑将Silverlight应用程序安装为浏览器外应用程序。只需在首次安装时以及有更新时(在后台执行更新),即可通过网络发送应用程序。

2)客户端 - 服务器数据传输

这在很大程度上取决于您的申请。对于像您建议的文档中心应用程序,您可以从Web服务器加载并保存整个文档。如果您非常关心带宽,可以使用自己的二进制序列化格式(例如Google Protocol Buffers),也可以构建在.NET Framework中可用的任何技术之上。如果您的文档包含大型对象(如图像),则带宽需求将增加。

不是将整个文档传回服务器,而是可以在客户端和服务器上的文档上保持并行表示,并且只在用户操作文档时将操作传回服务器。这是一个更复杂的解决方案,但在更新大型文档时可能会表现得更好。您可以使用.NET RIA Services或任何其他.NET客户端 - 服务器技术来实现此目的。

在您的情况下,我会忽略成本1)和成本2)对于任何基于.NET的客户端 - 服务器应用程序都是相同的,也就是说,Silverlight不会产生任何额外成本。