REST服务中的并发请求

时间:2014-05-19 12:54:04

标签: .net web-services wcf rest service

我正在寻求与WCF休息服务合作的澄清。

  1. REST服务可以处理多少并发请求?
  2. TimeOut对此有任何依赖吗?
  3. 我们如何在REST中实现缓存以实现连接 make;(例如,REST服务正在连接到Windows 对象,比如Windows 8,来查询一些东西;我怎么能保持这个 缓存中的连接)?
  4. 如果你能提供一些信息,那就太好了。

    由于 塞巴斯蒂安

1 个答案:

答案 0 :(得分:1)

鉴于您的问题的广泛性,我认为您可能需要研究WCF服务的几个方面:

<强>实例化
实例化行为(使用ServiceBehaviorAttribute.InstanceContextMode属性设置)控制如何创建InstanceContext以响应传入消息。默认情况下,每个InstanceContext都与一个用户定义的服务对象相关联,因此(在默认情况下)设置InstanceContextMode属性也控制用户定义的服务对象的实例化。

<强>并发
并发性是任何时候InstanceContext中活动线程数的控制。这是通过使用带有ConcurrencyMode枚举的ServiceBehaviorAttribute.ConcurrencyMode来控制的。

<强>节流
ServiceThrottlingBehavior类公开了可用于限制在应用程序级别创建的实例或会话数的属性。使用此行为,您可以微调WCF应用程序的性能。使用MaxConcurrentCalls属性指定ServiceHost类中正在处理的最大消息数,使用MaxConcurrentInstances属性指定服务中InstanceContext个最大对象数。

以下链接提供了有价值的参考:
http://msdn.microsoft.com/en-us/library/ms731193(v=vs.110).aspx
http://msdn.microsoft.com/en-us/library/ms735114(v=vs.110).aspx
Creating a WCF Restful service, concurrency issues