教程 1:企业应用程序集成

Microsoft BizTalk Server 为应用程序集成和业务流程管理(BPM)提供了开发和运行时环境。 本教程介绍使用 BizTalk Server 设置和部署企业应用程序集成(EAI)解决方案的端到端练习。

业务方案

Contoso 是销售计算机硬件和软件的在线商店。 该公司最近购买了一个企业资源规划(ERP)系统来管理其资源。 在本教程中,你将使用 BizTalk Server 开发企业应用程序集成(EAI)解决方案,将现有仓库系统集成到 ERP 系统,并自动执行仓库请求过程。

此集成解决方案存在一些挑战:

  • 消息传输。 仓库系统和 ERP 系统可以驻留在两个不同的平台上,并使用不同的运输协议发送和接收消息。 此解决方案必须能够使用发送系统支持的协议接收消息,并使用接收系统支持的协议转发消息。 BizTalk Server 使用 适配器 传输消息。 BizTalk Server 安装和 BizTalk 适配器包附带有许多原生适配器。 对于其他适配器,可以从供应商购买,也可以使用 BizTalk Server 提供的适配器框架自行开发。 有关适配器的详细信息,请参阅 BizTalk Server 中的适配器

  • 消息转换。 有许多消息类型,例如 eXtended 标记语言(XML)、电子数据交换(EDI)、带分隔符的文件等。 BizTalk Server 以 XML 为中心。 在大多数情况下,首先将入站消息转换为 XML。 此过程称为 分析。 在出站端,可以将消息从 XML 转换为其他类型的消息。 此过程称为 序列化

  • 业务流程管理。 大多数 EAI 方案不仅仅是将消息从一个系统转发到另一个系统。 它们通常涉及更多系统和复杂的工作流。 在此方案中,仓库发送请求库存补货的消息;解决方案收到消息,然后检查请求的总和。 如果总计超过一定数量,则解决方案会自动拒绝请求并发送拒绝消息;否则,解决方案会将请求转发到 ERP 系统。

    下图演示了业务流程:

    教程 1 消息流

    在本教程中,你将使用 BizTalk Server 开发工具设计和部署业务流程。

准备工作

在创建 BizTalk Server 集成解决方案之前,必须收集一些基本信息:

  • BizTalk Server 解决方案需要集成多少个应用程序/系统? 在此方案中,有两个系统:ERP 和仓库。

  • 每个应用程序支持哪些运输协议? 为了简化解决方案,我们假设两个应用程序都使用文件。 仓库系统将请求作为一个文件放入文件夹中。 BizTalk Server 解决方案从文件夹中选取文件,处理该文件,然后将请求删除给 ERP 系统监视的另一个文件夹。

  • 应用程序使用哪些消息类型? 为了简化解决方案,我们假设这两个应用程序都使用 XML 类型。 BizTalk 架构是定义 BizTalk 消息中 XML 数据结构的文档,其用途是创建用于处理和验证 XML 消息的模板。 BizTalk Server 附带用于创建 BizTalk 架构的 BizTalk 编辑器。

  • 什么是业务流程? 此前在此标题中已对此过程进行了说明。

BizTalk Server 体系结构

了解 BizTalk Server 如何运行解决方案非常有用。 下图显示了通过 BizTalk Server 的数据流。

教程 1 方案数据流

  • (仓库系统将请求放入文件夹中。)

  • BizTalk Server 接收位置配置了文件适配器和 XML 传输管道。 文件适配器定期从文件夹轮询文件。 收到消息后,BizTalk Server 消息引擎会通过管道推送消息。 由于请求消息采用 XML 格式,因此在这种情况下使用 XML 传输管道。 XML 传输管道可确保消息是格式正确的 XML 文件。 然后将消息保存到 MessageBox 数据库。

  • 当业务流程引擎注意到消息已准备好由业务流程处理时,它会实例化业务流程的实例。 根据消息内容的总计,业务流程编排引擎会将请求消息或请求拒绝消息保存到 MessageBox 数据库。

  • 同样,根据请求消息或请求拒绝消息,消息传送引擎使用任一发送端口来处理消息。 消息引擎首先通过 XML 传输管道推送消息,然后使用文件适配器根据发送端口配置将消息发送到不同的文件夹。

  • 仓库系统和 ERP 系统都监视指定的文件夹,以获取消息。

本节中