2011 年 12 月底,微软发布了一组称作Windows Azure Service Bus EAI 的预览版服务。它们是对当前Windows Azure 服务总线的增强,它可通过消息路由规则、协议桥接和消息转换服务,更容易实现云端应用于本地(on-premise)业务系统的连接。
微软的Windows Azure Service Bus EAI Labs 产品包含三大组件。其一是 EAI 桥(Bridge)。桥(Bridge)在多个应用之间形成一个消息层,它通过基于内容的路由规则选择消息目标。虽然 Windows Azure 中的桥(Bridge)只接受基于 HTTP 传输的 XML 消息,但是它却能将 XML 输出发送给 HTTP 端点(endpoint)、服务总线主题、服务总线队列、或其他桥(Bridge)。开发者可在桥(Bridge)的多个阶段对消息进行校验、填充和转换。
转换器(Transform)是Service Bus EAI Labs 的第二款组件,在XML 数据从一个应用流转到另一应用的过程中,它为开发者提供转换XML 结构的能力。微软同时发布了一款可视化XSLT 映射工具,可用于创建运行在Windows Azure 中的转换器(Transform),该工具让人想起Windows BizTalk Server 整合产品中的一款类似的工具。然而,这一XSLT 映射工具为开发者提供更多的已封装好的操作。除基本的字符串操作和数学计算之外,这一映射工具还有更高级的能力,比如在自定义列表中存储状态、通过执行 If-Then-Else 语句来提取目标消息。至于能否在转换器中编写自定义函数,暂未得到微软的官方说法。
该预发布版本的第三款重要组件是 Service Bus Connect 。它看上去是基于微软的两款现有产品( Windows Azure Service Bus Relay Service 和 BizTalk Adapter Pack )而构建的。Service Bus Connect 被标榜成可在云端应用和本地业务系统之间搭建安全的交互通道,本地业务系统有如 SAP、Seibel、Oracle EBS 以及 SQL Server 和 Oracle 数据存储产品。开发者可通过创建 Line of Business Relays 将内部业务数据和功能发布成安全而且易访问的 Azure Service Bus 端点(endpoint)。
微软还发布了一组工具和Visual Studio 模板,从而加速Service Bus EAI 解决方案的创建。一些微软MVP 授权的博客发布了如何基于以上三个组件构建项目的博文。Mikael Hakansson 描述了如何在桥(Bridge)中配置基于内容的路由,Kent Weare演示了新的XSLT 映射工具的用法,Steef-Jan Wiggers 展示了如何通过Service Bus Connect 对外发布对Oracle 数据库的访问。
InfoQ 联系到 Windows Azure 团队的产品经理 Itai Raz,期望为读者带来更多 Azure 整合组件的目标及方向方面的内容。
InfoQ:EAI 桥预览版发布的重点是让本地业务线上的系统对云端提供访问。那么,我可用 EAI 框架连接两个云端应用吗?
Raz:可以。使用现有功能你就可以做到两件事:一是连接云端应用和本地业务线上的系统,而是连接两个云服务。从根本上说,该版本是这样连接两个服务的,在消息从一个服务转移到另一个服务的过程中,它可对消息做转换、填充、然后路由到目标服务。服务可以位于云端,也可以在本地。
InfoQ:当开发者们得知这一发布时,他们最大的收获是什么?对于 CIO 呢?
Raz:我想说的是,对于我们所有客户,包括 CIO 们,最大的收获是微软把整合(Integration)当作重点的投资方向。你将看到我们在这一领域更大的投入,我们的 Windows Azure 产品会持续支持传统的整合场景,也会全面支持新的整合场景。 尤其对于开发者而言,我们的这一发布将帮助开发者更方便地使用 Windows Azure 平台开发、部署和管理整合解决方案,实现云服务之间的连接,以及云端到本地应用之间的连接。此外,.NET 开发者还可沿用现有的.NET 和 Visual Studio 开发技能及经验来开发整合解决方案。
InfoQ:在 Windows Azure 整合平台增加连接桥(Bridge)的同时,你们还会让大家还能看到类似于工作流 / 流程编排之类的工具吗?
Raz:Windows Azure 是一个丰富而全面的平台,它有许多不同的能力,用户通过混搭来实现其需求。你可以在 Windows Azure 应用中方便地使用 Windows Workflow Foundation,而且我们还打算带来更丰富的用户体验。 在我们持续发布整合功能的改进时,我们一直把用户及其需求放在心上。同样,前面提到的更广义的平台中也会包含工作流 / 流程编排能力的更新。
InfoQ:EAI/EDI 预览版会有他们独立的产品版发布吗,或者等到“全面”发布 Windows Azure 整合服务时一齐发布?
Raz:在 Windows Azure 中,我们的优势是能按照不同的步调发布各种能力。我们一直致力于改进和增强 Windows Azure 平台,所以一旦有新功能可用时,我们就会发布它。所以,你无需等到“全面”发布,而在新功能发布或改进时我们会通过 Windows Azure 博客通知你。
查看英文原文: Microsoft Previews Windows Azure Application Integration Services
评论