WEB开发网
开发学院数据库MSSQL Server 浅析SQL Server 2005中的主动式通知机制 阅读

浅析SQL Server 2005中的主动式通知机制

 2007-05-15 09:31:27 来源:WEB开发网   
核心提示: 在SQL Server 2005中引入的一种新特征“Service Broker”使得查询通知成为可能,Service Broker把队列机制引入到数据库管理中,浅析SQL Server 2005中的主动式通知机制(2),它使用一组队列与服务进行通讯,而服务反过来也

在SQL Server 2005中引入的一种新特征“Service Broker”使得查询通知成为可能。Service Broker把队列机制引入到数据库管理中,它使用一组队列与服务进行通讯,而服务反过来也知道如何往回通讯以调用相应的实体。其实,这些队列和服务都是一些与表、视图和存储过程一样的类对象。尽管完全可以在SQL Server内使用Service Broker,但是ADO.NET也知道如何与Service Broker进行通讯以触发这种机制并且从Service Broker中检索回通知。

【作者注】Service Broker是SQL Server 2005中新增加的一项重要服务,旨在为日趋流行的面向服务的架构(Service-Oriented Architecture,即“SOA”)在数据库存储级提供基础性支持。

其实,完整的通知架构还是比较复杂的。其中参与的组件可能包括:SQL Server 2005查询引擎、Service Broker、系统存储过程sp_DispatcherProc;ADO.NET的SqlNotification类(System.Data.Sql.SqlNotificationRequest)、SqlDependency类(System.Data.Sql.SqlDependency);以及ASP.NET 2.0中新的Cache类(System.Web.Caching.Cache)等等。

下图1展示了SQL Server 2005中的主动通知机制及其与客户端ASP.NET页面交互的示意图。

图1:SQL Server 2005主动通知机制示意图

上面的运行逻辑大致如下:

(1)SqlCommand类中提供了一个Notification属性,用于存储通知相关的设置。当SqlCommand执行时,会让传递该执行需求的TDS协议附加上通知的相应信息。

(2)SQL Server 2005收到该需求后,为这个需求注册通知,并执行该需求自身的SQL语句;

上一页  1 2 3 4 5  下一页

Tags:浅析 SQL Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接