图文演示WCF体系架构运行流程

开发 后端
想要知道WCF体系架构运行过程吗?文章有详细的流程图,从客户端到服务器端方法的流程,希望大家看过本文会有大的提高。

想要很好的运用一门语言你就要深入的理解它的体系架构,就拿我们想在用的WCF类库,你知道WCF体系架构吗?知道它是怎么运行的吗?这里就为你解开这个谜团。如果从宏观的角度来分析WCF的运行机制,它的实现并不复杂。

#T#WCF体系架构是基于一种拦截机制来实现的,负责传递和拦截消息的组件为通道,在客户端发出对服务端服务的调用时,首先会通过一个服务代理对象,将调用方提供的对象序列化到消息中,然后该消息则通过通道进行传递。通道不只是包括一个,而是多个通道对消息进行处理,包括传输、消息编码、管理会话、传播事务等,但***层的通道总是传输通道。这些通道的构成形成了一个通道堆栈。由于对象已经被序列化,因而此时通道传递的消息可以跨进程或机器进行传递,利用传输通道传递到服务端。服务端的构成与客户端基本相似,仍然是通过通道栈中***层的传输通道接收消息,然后解析消息编码,并一层层地往上传输。在服务端的通道栈之上,则是一个分发器(Dispatcher,或者说是调度器),它会首先对消息进行检查,然后选择一个客户端要调用的操作。在这个过程中,消息会被反序列化。

下图说明了整个WCF体系架构运行过程:

wcfbasic02.gif

由于WCF通过通道的方式传递消息,整个通道同时担当了侦听器和拦截器的功能,它可以根据服务的定义,在方法执行的前或后执行不同的操作,例如事务、会话管理、安全等。这些操作在WCF中,大多数都可以以Attribute的方式应用到服务契约上,这样的实现方式,就类似于采用了AOP(面向服务编程)的方法为服务提供了大量的基础功能,有助于简化服务开发者的工作。

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

2009-11-05 16:34:37

WCF序列化

2009-11-09 13:12:14

WCF事物操作

2009-11-06 09:30:35

WCF服务框架

2009-11-09 16:14:49

WCF服务元数据

2010-03-01 16:25:07

WCF体系架构

2023-06-28 10:24:04

2010-03-02 13:43:01

WCF事务演示

2009-11-12 09:51:59

ADO.NET结构

2009-11-05 10:07:37

WCF设计模式

2009-11-06 15:02:47

WCF契约查询

2010-03-02 14:12:30

WCF枚举类型

2010-02-23 16:07:39

2009-11-09 15:28:04

WCF知识结构

2010-02-25 14:46:31

2009-12-21 14:37:14

2009-10-29 10:00:53

ADO.NET数据集

2009-11-05 14:25:36

WCF Data Co

2009-11-09 11:31:47

WCF消息队列

2009-11-06 13:59:09

WCF Service

2009-11-09 13:23:35

WCF协定
点赞
收藏

51CTO技术栈公众号