服务集成总线之间的直接路由和间接路由
您可以使用直接或间接连接使服务集成总线互连,以使所有总线都可以交换消息。
可直接或间接连接服务集成总线。对于直接连接,两个总线通过单个服务集成总线链路直接连接至另一服务集成总线,或者通过 IBM MQ 链路直接连接至 IBM MQ 队列管理器或队列共享组(称为“网关队列管理器”)。对于间接连接,两个总线通过链路链中连接的一个或多个中间总线连接。
- 该连接是直接连接还是间接连接。
- 如果是直接连接,那么物理链路可以是从本地总线中消息传递引擎至外部总线中消息传递引擎的服务集成总线链路,或者是从本地总线中消息传递引擎至 IBM MQ 网络中网关队列管理器的 WebSphere® MQ 链路。
- 如果该连接是间接连接,那么连接是指向目标总线的链中的下一个外部总线。
在图 1 中,总线 1 和总线 2 是使用单个直接服务集成总线链路直接连接的。总线 1 中的消息传递引擎使用直接服务集成总线链路连接至总线 2 中的消息传递引擎。

要通过中间总线或总线链将一条总线连接至另一条总线,如果中间总线或总线链与目标总线之间的连接已存在,那么不需要任何新物理链路。相反,每个外部总线连接将指向最终目标总线的路径上的相邻总线标识为链中的“下一个中继段”。链中的每个总线必须知道链中通往目标总线的下一个中继段。本地总线使用外部总线连接标识链中指向目标总线的下一个总线,并使用其直接物理链路将消息传送至该总线。然后,每个中间总线使用其本地定义的外部总线连接来标识链中的下一个总线,直到到达目标总线。
链中的物理链路可以是服务集成总线链路或 WebSphere MQ 链路。
在图 2 中,要将消息从总线 1 发送至总线 3,应先通过链路将消息从总线 1 路由至总线 2 ,然后通过另一链路将该消息从总线 2 路由至总线 3。总线 1 具有将总线 2 标识为直接连接的外部总线连接,以及将总线 2 标识为指向总线 3 的路径上的下一个外部总线的外部总线连接。总线 2 具有标识通往最终总线的下一个中继段的外部总线连接,在此示例中,该连接是指向总线 3 的直接连接。

下图显示包含三个总线(总线 1、总线 2 和总线 3)的现有网络,将在其中添加新总线(总线 n)。总线 n 将直接连接至总线 1 并间接连接至总线 2 和总线 3。

- 对于总线 n,必须定义以下资源:
- 表示总线 1 的直接外部总线连接。将自动创建总线 n 上消息传递引擎与总线 1 上消息传递引擎之间的服务集成总线链路。
- 将总线 1 指定为链中下一个总线并将总线 2 指定为目标总线的间接外部总线连接。
- 将总线 1 指定为链中下一个总线并将总线 3 指定为目标总线的间接外部总线连接。
- 对于总线 1,表示总线 n 的直接外部总线连接。将自动创建总线 1 上消息传递引擎与总线 n 上消息传递引擎之间的服务集成总线链路。该服务集成总线链路的名称必须与总线 n 中创建的服务集成总线链路的名称完全匹配。
- 对于总线 2,将总线 1 指定为链中下一个总线并将总线 n 指定为目标总线的间接外部总线连接。
- 对于总线 3,将总线 2 指定为链中下一个总线并将总线 n 指定为目标总线的间接外部总线连接。
下图显示添加总线 n 之后的网络。总线 n 直接连接至总线 1。总线 n 中的消息传递引擎通过使用直接服务集成总线链路连接至总线 1 中的消息传递引擎。这是总线 n 与总线 2 之间以及总线 n 与总线 3 之间的间接连接。
