适配器消息交换模式
BizTalk 适配器框架支持一组丰富的消息交换模式,适配器可以在许多功能强大的消息传送方案中使用这些模式。
One-Way (异步)
此处的关键概念是消息向一个方向流动。
在此消息交换模式中,消息通过适配器单向流入BizTalk Server。 消息引擎将消息发布到 MessageBox 数据库。 如果业务流程具有该类型消息的活动订阅,则消息将路由到该业务流程。
处理消息后,业务流程会将消息发布回 MessageBox 数据库,然后再将其路由到适配器以传输到特定终结点。
将消息提交到引擎时,预期不会有任何响应。 在出站端,当传输消息时,预期不会有任何响应。 这通常称为异步消息传送,在很多方面都是引擎用于所有消息传送方案的基本构建基块。
Request-Response 样式协议 (异步同步)
请求-响应方案包括接收请求消息、处理请求消息和发送响应消息。 它也称为异步同步 (异步同步) ,因为基础BizTalk Server体系结构出于可伸缩性原因是异步的。 但是,BizTalk 消息引擎的体系结构允许在这些异步交换之上公开同步消息交换模式。 为此,引擎处理复杂的任务,即通过链接多个异步消息交换来公开同步接口,从而跨横向扩展的体系结构关联请求和响应消息。
例如,检查清单的网页可能会对 BizTalk SOAP 接收适配器进行 SOAP 调用。 BizTalk Server协调一系列 Web 服务,这些服务聚合信息并在一个 SOAP 响应中返回。 对客户端,这似乎是一个同步 SOAP 调用,但实际上,引擎将大量异步消息交换组合在一起。
Solicit-Response 样式协议
此方案通过发送请求消息启动,并通过接收响应消息完成。 它被称为 solicit-response,因为发送的初始消息正在请求响应消息的终结点。 使用此消息交换模式的方案可能涉及业务流程发出出站 HTTP 调用, (请求响应) 并等待响应。
Request-Multiresponse
此方案类似于请求-响应方案。 但是,在这种情况下,可能会为给定请求返回多个响应。 API 允许指定超时值,并在超时期限内收到的所有响应将返回到接收适配器。
Loop-Back
此方案类似于请求-响应方案。 请求消息照常发布,但引擎确保响应消息路由回发布请求消息的同一适配器实例。 由于请求消息发布到 MessageBox 数据库,因此跟踪基础结构可确保跟踪请求和响应消息。 这也是对消息调用发送管道处理,然后立即将输出消息发送回适配器以供后续处理的好方法。
此方案的一个示例是需要邮件回执的客户端。 入站消息将发布到 MessageBox 数据库。 此消息和回执将在同一批中返回到适配器。 在这种情况下,将复制入站消息,其中一个实例返回到客户端,另一个实例以正常方式进行处理。 此特定方案还需要编写自定义 XML 反汇编程序。