Web服务与常规Http请求

时间:2008-10-09 20:29:34

标签: performance web-services

大约5000台计算机将拨打中央服务器,他们将把GUID传递给中央服务器。

然后服务器将True / False返回给客户端。

Web服务和服务器上的Url的常规Http请求之间的性能有很大差异吗?

8 个答案:

答案 0 :(得分:4)

是的,SOAP信封相对较大。我建议使用基于REST的服务,将数据的大小保持在最小值。

答案 1 :(得分:2)

我认为Web Serivce是指SOAP。我在不同平台(Java,.NET,Ruby,PHP)上使用各种SOAP堆栈的经验是,在这种情况下,您可能会在处理这样一个简单消息时看到一个数量级的差异。 SOAP通常会产生大量开销,如果您传递的是大型邮件,则可以忽略不计,但对于小邮件来说却是过度杀伤。使用SOAP就像一只带着便士的大象。在这种情况下,我建议只使用一个简单的HTTP处理程序。

是否所有5000个客户端都会一次点击服务器?你需要保证一定的响应时间吗?

答案 2 :(得分:1)

REST网络服务 HTTP。

因此,我不明白这个问题。也许您应该提供有关协议,消息,RPC样式或文档样式,文档大小等的更多信息。

答案 3 :(得分:0)

我不是百分之百确定响应时间的性能优势,但是WebService请求只返回真假,而不是常规的http请求,然后解析我猜的响应将会更有效。< / p>

答案 4 :(得分:0)

我有一个应用程序,目前有大约7000台机器使用WCF调用.net Web服务 每台机器每15分钟拨打一次电话。该服务获取数据并将其推送到SQL服务器;它安装在同一个盒子里。

现在它每天收集大约350MB的数据。

负载几乎无法注册,我们正在将其推广到25,000个客户端。

我想我的观点是,将guid传递给服务器并返回真值/假值并不是一件令人担心的事情,除非5年前网络服务器是一个POS。

答案 5 :(得分:0)

如果有任何差异,我认为差别不大。 HttpRequest实际上可能更快,因为它在堆栈中使用了更少的层。如果您认为自己将来会扩展服务,那么您可以继续使用WebSerivce,而不是因为性能(性能差异可能可以忽略不计),而是因为随着服务变得更复杂,WebService将更易于维护。 / p>

答案 6 :(得分:0)

实际上它不会产生太大的影响。在这个请求中可能引入延迟的事情中,你有:

  • 执行编译代码
  • 网络往返
  • 数据库访问(可能是您要检查的内容?)

即使你有一个快速的网络和数据库服务器,进行网络往返和数据库访问(可能涉及另一个网络往返)花费的时间将导致执行编译代码的开销您使用微不足道的Web服务框架。

答案 7 :(得分:-1)

SOAP和REST Web服务意味着一些开销,但如果您认为需要扩展以返回除true / false之外的其他一些信息,那么肯定是要走的路。

只有1/0或true / false的HTTP响应会小得多,因此理论上更快。