Biztalk学习第一章(总体架构)

 

Biztalk运行时的结构数据库


BizTalk Server 本质上就是消息处理引擎。我的认为在了解Biztalk以前必需要知道的一部分即是BizTalk Server 的总体架构,只有对架构烂熟于心这样才能为往下深刻学习作好基础。架构

首先来看一下Biztalk的总体架构图ide

wKioL1cfdZDQFgkfAACqZigrubk377.png

如上图所示,完整的绘制了Biztalk在接受端口接收到文件后整个处理文件的过程。学习

 

接下来分开叙述:(参照微软官方文档)spa


接收端口和接收位置3d

“接收端口”是一个或多个接收位置的集合,是BizTalk Server 的特定入口点。“接收位置”是接收消息的单个终结点(URL) 的配置。该位置包含接收适配器和接收管道的配置信息。“适配器”负责接收消息的传输和通讯部分。代理

发送端口和发送端口组(多个发送端口)

“发送端口”是发送管道和发送适配器的组合。发送端口组是发送端口的集合,做用很像电子邮件分发列表。发送到发送端口组的消息将被发送到该组中的全部发送端口。发送管道用于准备来自 BizTalk Server 的消息以将其传输到其余服务。发送适配器负责使用特定协议实际发送消息。orm

业务流程

业务流程能够经过 MessageBox 订阅(接收)和发布(发送)消息。此外,业务流程能够构造新的消息。使用已讨论过的订阅和路由机制接收消息。在填入业务流程的订阅后,将激活新的实例并传送消息;对于实例订阅,若有必要,将解除对该实例的冻结,而后传送消息。若是从业务流程发送消息,则这些消息将发布到 MessageBox,发布的方式如同消息到达接收位置,相应的属性将插入数据库以用于路由对象

MessageBox 数据库

BizTalk Server 中发布/订阅引擎的核心是 MessageBox 数据库。MessageBox 由两个组件构成:一个或多个 Microsoft SQL Server 数据库和消息代理。SQL Server 数据库为许多对象(包括消息、消息属性、订阅、业务流程状态、跟踪数据和用于路由的主机队列)提供持久化存储blog


适配器的做用

接收适配器经过读取数据流和建立消息来启动接收消息的过程。例如,文件适配器发现某文件已置于其配置的位置中,而后在流中读取该文件。 适配器将建立消息(Microsoft.BizTalk.Message.Interop.IBaseMessage接口实现)、向该消息添加部分(Microsoft.BizTalk.Message.Interop.IBasePart接口实现)、而后将数据流做为该部份内容进行提供。

此外,适配器还将写入和升级到与位置、适配器类型以及其余内容(与适配器相关)相关的消息上下文属性。在建立消息及其上下文后,适配器将消息传递到终结点管理器。 而后,经过为接收位置配置的接收管道处理该消息。 在消息由管道处理后,终结点管理器使用消息代理发布该消息前,使用映射将消息转换为所需格式。

管道的做

尽管初始消息是由适配器建立的,但对收到消息的处理过程大部分发生在接收管道中。管道处理针对消息内容以及消息上下文。 消息内容一般在解码、拆装和验证阶段进行处理,而对消息上下文的处理则可发生在全部阶段。 可是,管道无需做用于内容或上下文。例如,默认的直通管道并未配置任何组件而且不会对消息内容或上下文进行处理。 为简单起见,此文档将重点介绍拆装组件,由于这些组件一般对消息路由的影响最大。

拆装器的工做是处理来自适配器的传入消息并将其拆装成多个消息,以及对消息数据进行解析。在传入消息具备多个较小的消息时,称为交换。 经过使开发人员可以配置与包装内容(即,平面文件拆装器的头部架构和尾部架构以及 XML 拆装器的信封架构)以及(可能重复)正文内容有关的信息,平面文件拆装器和 XML拆装器能够处理交换。 此外,这两种拆装器均可将原始消息解析为 XML 内容。 若是在 BizTalk Server 中不须要作进一步的 XML 处理,则自定义拆装器无需将内容解析为 XML。 示例方案包括简单的路由方案,在此方案中,在特定接收位置进入系统的消息将发送到不具备映射或其余基于 XML 的处理的特定发送端口


下一章(主机、主机实例)

相关文章
相关标签/搜索