簡體   English   中英

是否可以橋接兩個WebSphere MQ消息傳遞總線?

[英]Is it possible to bridge two WebSphere MQ messaging buses?

我對WebSphere MQ完全陌生,但是我將NServiceBus作為消息傳遞系統使用。

我面臨的情況是,我有兩個系統,兩個系統都使用自己的WebSphere MQ,並且我需要一個系統中的端點來接收消息並將消息發送到另一個系統,反之亦然。

值得一提的是,這兩個系統部署在兩個單獨的基礎結構中,並且存在安全限制,這基本上意味着每個系統上的端點都不能訪問另一個系統中的資源。

是否有任何橋接機制可以允許在兩個基礎結構之間創建一個安全的集成點,然后將消息從一側的隊列復制到另一側?

您有兩個系統都使用它們自己的WebSphere MQ隊列管理器。 對於這個答案,我將它們稱為QM1和QM2。 您將需要進行如下定義,以將它們結合在一起。

在QM1上創建以下命令:

DEFINE QLOCAL(QM2) USAGE(XMITQ) +
       DESCR('Transmission queue for messages being delivered to QM2')

DEFINE CHANNEL(TO.QM2) CHLTYPE(SDR) CONNAME('ipaddr-qm2(port-qm2)') XMITQ(QM2) +
       DESCR('Sender channel to move messages to QM2')

DEFINE CHANNEL(TO.QM1) CHLTYPE(RCVR) +
       DESCR('Receiver channel is receive messages from QM1') 

在QM2上創建以下命令:

DEFINE QLOCAL(QM1) USAGE(XMITQ) +
       DESCR('Transmission queue for messages being delivered to QM1')

DEFINE CHANNEL(TO.QM1) CHLTYPE(SDR) CONNAME('ipaddr-qm1(port-qm1)') XMITQ(QM1) +
       DESCR('Sender channel to move messages to QM1')

DEFINE CHANNEL(TO.QM2) CHLTYPE(RCVR) +
       DESCR('Receiver channel is receive messages from QM2') 

您還可以研究創建數字證書,並使用各種SSL / TLS設置來保護兩個隊列管理器之間的這些連接。

您大概有一個隊列,在該隊列中放置了需要移至其他系統的消息?

如果將該隊列放入QREMOTE而不是QLOCAL,則可以將其沿着上述通道向下傳遞到另一個系統。

DEFINE QREMOTE(SEND.TO.QM2) RNAME(Q.ON.QM2) RQMNAME(QM2) XMITQ(QM2)

如果您已經在QM1上的QLOCAL上收到了需要到達QM2的消息(反之亦然),那么您將需要一個簡單的管道應用程序來從它們當前所在的位置獲取它們並將它們放入上面定義的QREMOTE。 像QLOAD這樣的東西可以做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM