我对如何使用本地队列和远程队列感到困惑。让我提出一个设想:
我有一个应用程序1,它向IBM发送消息(Msg1),它将消息存储在位于QMGR中的队列1中,然后由应用程序2使用。
在这个阶段,是否需要实现远程队列或本地队列。如果为此使用本地队列,那么我将在哪里使用远程队列。
我相信这是一个基本的问题,但我只是想更好地理解IBM。请帮我提你的建议。
谢谢
发布于 2016-05-24 21:27:46
如果您只是使用MQ,以便一个应用程序可以将消息存储在队列上,以便另一个应用程序检索,那么本地队列就足够了。在MQ消息中,总是驻留在本地队列(正常队列或传输队列)上,而其他定义只是帮助路由通信量。
何时使用远程队列的一个示例是希望将应用程序拆分,因此putter应用程序将放置在一台计算机上的一个队列管理器上,而使用者/getter应用程序可能位于另一台计算机上的另一个队列管理器上。在这种情况下,putter可以寻址一个远程队列,但是消息实际上是在传输队列中结束的--然后一个通道从传输队列中检索消息,将消息通过通道流到另一个队列管理器,然后放到消费者正在读取的目标队列管理器上的“本地”队列中。
例如,使用远程队列,可以将生产者和使用者分开,而不需要他们更改从队列得到的队列名称--假设他们同时是从queue MYQUEUE读取的生产者和使用者。然后,您可以使用一个名为MYQUEUE的远程队列将使用者移动到一个队列管理器(QM1),该队列的真实(远程)名称是另一个队列管理器(QM2)上的MYQUEUE。在队列管理器2上,您将有一个名为MYQUEUE的本地队列定义。生产者仍然打开并写入MYQUEUE,并且不知道它的消息将被路由,并且使用者仍然从MYQUEUE读取并检索消息。
https://stackoverflow.com/questions/37423200
复制相似问题