Web应用程序后端即服务?

时间:2011-06-13 11:57:14

标签: c# asp.net wcf

我们正在建设#34;下一代"网站从一开始。 在UI的那一刻,我们使用EXT和asp.net 我们认为后端应该是由iis托管的wcf服务,其中应用程序将从服务获取数据。主要原因是支持不同技术需要更改UI。我担心的是速度。 拜托,我将感谢任何意见。 盖伊

4 个答案:

答案 0 :(得分:2)

如果速度是主要问题,您可以采取两种方法:

  1. 使用基于JSON的库。如果它是一个简单的应用程序,在UI层没有太多的逻辑(并且大部分都推送到服务),你可以使用JS支持使用jQuery或EXT等库来制作页面纯HTML,如你所提到的。后端服务可以是.NET或Java服务,因为它本身都支持json。

  2. 如果您有多种注意事项需要使用ASP.NET,则更喜欢通过http绑定使用tcp绑定(请阅读MSDN中有关其优缺点的更多信息。如果安全性不是一个大问题,请不要使用HTTPS或任何传输级安全性。

  3. 最终,实施将取决于您拥有的大量资源。如果你有一些擅长JS的人,那就选择第一个选项。如果人们更熟悉ASP.NET坚持使用第二个。

答案 1 :(得分:1)

速度取决于所使用的绑定的“类型”。 WCF Binding Decision

以下是有关WCF效果的一般文章:A Performance Comparison of Windows Communication Foundation (WCF) with Existing Distributed Communication Technologies

答案 2 :(得分:1)

我会理所当然地认为您将拥有多个UI,并且您需要WCF服务。从那时起重要的是:服务和网络应用程序是在同一台机器/本地相互之间吗?如果没有,并且如果这是高流量站点,那么您将遇到性能问题,并且每次您必须去服务以获取单个网页请求的数据时将这些问题相乘(因此尝试将此数据提取合并到单个DTO对象或东西)。

我认为具有远程后端的网站非常罕见,除非本地和低延迟之间

答案 3 :(得分:1)

您是否有任何特定的担忧而不仅仅是'速度一般'?告诉我们更多关于人们将如何使用这些服务,您将要传输的数据类型,是否都是本地用户?还是在不同的国家?等

您是正确的,创建服务/ API将允许您更换UI或具有多个UI渠道(浏览器,手机,平板电脑等等)。

速度总是在这里妥协。您的数据必须被序列化以便通过服务进行发送,但最大的瓶颈将是网络传输(可能是通过HTTP)。

你应该考虑缓存(检查一个名为Squid的产品作为起点)以及HTTP压缩,并且基本上只是确保使服务器端数据检索代码尽可能高效。

钽 克里斯。