关于三种WCF模式揭秘

开发 后端
这里就WCF模式的三种模式做出了详细的介绍,想知道更多吗?文章还有详细的图片介绍,希望对大家有帮助。

我们大家都知道WCF支持三种模式,不知道的没有关系,相信你通过本篇文章你会了解WCF模式的。单调和单例模式体现了两种极端的远程对象激活方式,而CAO则是一种相对折中的方式:一个客户端代理对象与一个远程对象一一匹配。WCF实例上下文模式与.NET Remoting的远程对象激活方式类似,同样具有三种不同的实例上下文模式,分别与上述三种激活方式匹配。这三种实例上下文模式分别是:单调(Per- Call)模式、会话(Per-Session)模式和单例(Single)模式。

1、单调(Per-Call)模式

#T#单调(Per-Call)模式.NET Remoting的SingleCall远程对象激活方式。如果采用单调实例上下文模式,对于每一个服务调用,不论是来自相同的客户端(服务代理)还是不同的客户端,WCF模式总是创建一个全新的服务实例和实例上下文对象来处理服务调用请求。在服务操作执行完毕,实例上下文对象和被封装的服务实例被回收调。图揭示了在单调模式下实例上下文、服务实例和服务代理之间的关联。

clip_image004

图单调模式下服务代理与服务实例上下文之间的关联

2、会话(Per-Session)模式

会话(Session)的目的在于保持来自相同客户端(即同一个服务代理)多次服务调用之间的状态。如果从消息交互的角度来讲,通过会话可以将来自相同客户端的多个消息关联在一起。在会话实例上下文模式下,WCF为每一个服务代理对象分配一个单独的服务实例上下文对象,对于来自相同服务代理的所有服务调用请求,都将分发给相同的服务实例上下文处理。会话模式与.NET Remoting下的CAO远程对象激活WCF模式类似,图3揭示了会话模式下实例上下文、服务实例和服务代理之间的关系。

 

 

clip_image004

模式下服务代理与服务实例上下文之间的关联

3、单例(Single)模式

单例模式意味着WCF为每个服务维护一个并且仅维护一个服务实例上下文。不论请求来自相同的服务代理还是不同的服务代理,处理服务调用请求都是同一个服务实例上下文对象。单例模式相当于.NET Remoting下的Singleton远程对象激活方式,图4揭示了单例模式下实例上下文、服务实例和服务代理之间的关系。

clip_image006

会话模式下服务代理与服务实例上下文之间的关联

责任编辑:田树 来源: 博客
相关推荐

2009-12-21 13:37:43

WCF消息交换

2009-11-09 13:04:53

WCF事物处理

2010-03-01 15:21:57

WCF死锁

2010-06-13 16:04:14

MySQL三种安装方式

2009-11-06 10:54:19

WCF服务方式

2010-09-01 12:50:04

CSS清除浮动

2015-09-14 09:31:44

结对设计

2009-12-22 13:34:07

WCF性能计数器级别

2009-11-06 15:47:17

WCF Windows

2022-05-27 11:33:02

前端代码设计模式

2010-09-09 10:08:59

2009-11-06 14:25:56

WCF接口

2016-09-13 14:05:24

Spark集群管理模式

2010-06-28 17:43:44

SQL Server

2010-07-13 15:55:12

FTP数据传输模式

2009-11-17 10:42:58

PHP操作符

2023-04-13 07:41:14

RoCE技术RDMA

2010-10-21 16:43:47

sql server恢

2022-09-26 08:03:25

VMware虚拟机

2022-11-03 08:44:24

代理模式Java设计模式
点赞
收藏

51CTO技术栈公众号