WCF发布订阅实质内容剖析

开发 开发工具
WCF发布订阅的设计模式所隐藏的含义其实是比较简单的。我们可以在学习的过程中,通过不断地实践来熟练掌握这一应用。

WCF开发工具中,有一种比较重要的设计模式,叫做WCF发布订阅模式。对于初学者来说掌握这一模式可能还是一件比较困难的事情。下面就让我们一起看看他的一些基础内容,从而初步了解WCF发布订阅的基本概念。#t#

WCF发布订阅设计模式

我们可以使用已知的发布-订阅设计模式对一些特定的功能进行设计。该模式所隐藏的含义很简单:通过引入一个专门的订阅服务,以及一个专门的发布服务,解除发布者与订阅者之间的耦合,如图B-1所示。

WCF发布订阅模式

图B-1 一个WCF发布订阅系统

需要订阅事件的订阅者注册订阅服务,该服务负责管理订阅者列表,同时为取消订阅提供了相似的功能。同样,所有发布者均使用发布服务触发它们的事件,避免将事件直接传递给订阅者。订阅和发布服务提供了一个间接层,从而解除了与系统之间的耦合。订阅者不需要了解发布者的身份。它们能够订阅事件类型,以及接收任何发布者的事件,并且订阅机制对于所有订阅者都是统一的。事实上,发布者不需要管理任何订阅列表,也不用关心订阅者是谁。它们会将事件传递给发布服务,然后再传递给需要事件的订阅者。
 

WCF发布订阅者类型

我们甚至可以定义两种类型的订阅者:临时订阅者是在内存中运行的订阅者;持久订阅者则是持久化到磁盘的订阅者,它们代表了服务对发生事件的调用时间。对于临时订阅者,可以使用双向回调机制,通过它将回调引用传递到正在运行的服务。持久订阅者则需要将订阅者地址当作引用进行记录。当事件发生时,发布服务会调用持久订阅者的地址,然后将事件传递给它。两种订阅类型还有另外一个显着区别,就是我们可以将持久订阅者存储在磁盘或数据库中。这样就能够在关闭应用程序或机器崩溃或重启的时候,持久化订阅者。这一过程允许以管理方式对订阅进行配置。显然,在关闭应用程序时,我们不能存储临时订阅,而需要在每次应用程序启动时,明确地创建临时订阅。

责任编辑:曹凯 来源: qqread.com
相关推荐

2010-02-24 15:28:59

WCF ABC

2010-02-25 09:36:28

WCF行为控制

2009-11-05 10:07:37

WCF设计模式

2010-02-23 16:07:39

2010-02-26 13:21:42

WCF通道形状

2010-01-27 10:52:15

Android垃圾回收

2010-02-23 09:34:15

WCF重载

2010-02-22 16:09:33

WCF宿主

2010-02-22 10:01:11

WCF消息处理

2009-11-09 11:15:06

WCF消息队列

2010-02-22 15:27:05

WCF数据契约

2010-02-22 16:26:47

WCF传输数据

2009-11-06 09:14:14

WCF可靠性

2010-03-02 13:43:01

WCF事务演示

2009-12-08 17:56:16

WCF配置

2009-12-07 18:43:29

WCF框架

2010-02-25 13:40:17

WCF禁用安全配置

2010-02-22 10:29:11

WCF上传文件

2010-02-23 11:22:15

WCF跟踪调试

2010-02-25 14:39:03

WCF术语
点赞
收藏

51CTO技术栈公众号