WCF实例上下文与并发
2015-04-05 12:39
197 查看
一、实例上下文模式(InstanceContextMode)可以简单地理解为服务端的服务实例与客户端的服务代理之间的关联方式。WCF具有单调(Per-Call)、会话(Per-Session)、和单例(Single)
单调(Per-Call)
会话(Per-Session)
单例(Single)
二、并发
通过ServiceBehaviorAttribute特性定义并发模式
WCF为三种典型的并发处理策略定义了Single、Reentrant和Multiple三种典型的并发模式。
Single:一个实例上下文在某个时刻只能用于对单一请求的处理,或者说只针对某个实例上下文的多个并发的请求会以一种串行的方式进行处理。
Reentrant:一个实例上下文对象在某个时刻只能用于对单一请求的处理。如果服务操作在执行过程中涉及对客户端的回调(Callback),在 回调过程中该实例上下文可以用于其他服务调用请求的处理。如果回调操作执行后服务实例上下文没有用于其他请求的处理,回调后的操作能够得到处理。
Multiple:一个实例上下文可以同时用于处理多个服务请求。
单调(Per-Call)
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)] public class TestService : ITest
会话(Per-Session)
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)] public class TestService : ITest
单例(Single)
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)] public class TestService : ITest
二、并发
通过ServiceBehaviorAttribute特性定义并发模式
WCF为三种典型的并发处理策略定义了Single、Reentrant和Multiple三种典型的并发模式。
Single:一个实例上下文在某个时刻只能用于对单一请求的处理,或者说只针对某个实例上下文的多个并发的请求会以一种串行的方式进行处理。
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Single)] public class TestService : ITest
Reentrant:一个实例上下文对象在某个时刻只能用于对单一请求的处理。如果服务操作在执行过程中涉及对客户端的回调(Callback),在 回调过程中该实例上下文可以用于其他服务调用请求的处理。如果回调操作执行后服务实例上下文没有用于其他请求的处理,回调后的操作能够得到处理。
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Reentrant)] public class TestService : ITest
Multiple:一个实例上下文可以同时用于处理多个服务请求。
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)] public class TestService : ITest
相关文章推荐
- WCF并发(Concurrency)的本质:同一个服务实例上下文(InstanceContext)同时处理多个服务调用请求
- WCF实例上下文模式与并发模式对性能的影响 转载自:http://log.medcl.net/item/2010/03/wcf-instance-context-mode-and-the-performance-impact-of-conc
- WCF并发(Concurrency)的本质:同一个服务实例上下文(InstanceContext)同时处理多个服务调用请求(转)
- 并发与实例上下文模式: WCF服务在不同实例上下文模式下具有怎样的并发表现
- WCF并发(Concurrency)的本质:同一个服务实例上下文(InstanceContext)同时处理多个服务调用请求
- WCF实例上下文模式与并发模式对性能的影响
- WCF学习之:实例上下文模式和并发模式的性能影响
- 用实例浅谈WCF实例与并发
- WCF ServiceHost的实例方式及ServiceHost实例的并发方式
- WCF 第五章 控制并发实例的数量
- WCF实例与并发
- WCF 第五章 控制并发实例的数量
- ConcurrencyMode.Multiple模式下的WCF服务就一定是并发执行的吗:探讨同步上下文对并发的影响[上篇]
- WCF4.0 –- RESTful WCF Services (实例) (并发同步服务 SyncService)
- WCF 第五章 并发和实例(服务行为)
- WCF4.0 –- RESTful WCF Services (实例) (并发同步服务 SyncService)
- ConcurrencyMode.Multiple 模式下的WCF服务就一定是并发执行的吗:探讨同步上下文对并发的影响[下篇]
- WCF简单教程(7) 并发模型与实例模型
- WCF实例与并发
- WCF实例上下文