【问题标题】:Create Queue Manager in a Declared Host在声明的主机中创建队列管理器
【发布时间】:2023-03-13 09:11:01
【问题描述】:

在 C# 中,使用 IBM WebSphere MQ,我运行:

var properties = new Hashtable();
properties.Add(MQC.HOST_NAME_PROPERTY, someHostName);
var queueManager = MQQueueManager(someQueueNameManager, properties);

我得到一个例外:

System.Exception: Channel and Connection MUST be specified

显然,它要我指定频道。但我不想指定频道。指定它重要吗?我的意思是,当我跑步时

var queueManager = MQQueueManager(someQueueNameManager);

它可以工作并连接到本地 MQ。如何在不指定任何通道的情况下创建连接到不同主机中的队列管理器的 MQQueueManager 对象?如果需要指定频道,请说明原因。

【问题讨论】:

  • "如果需要指定频道,请说明原因。" @Umapathy 比我回答“因为这就是产品的工作方式”更慷慨。我的一个更慈善的回答可能是建议点击websphere-mq 标签并阅读标签维基。那里有许多免费下载、文档、教程等的参考资料。如果 Umapathy 指向的 MQ Primer 尚未列出,我现在将其添加。

标签: c# message-queue ibm-mq


【解决方案1】:

您需要一个 MQI 通道(服务器连接或服务器连接和客户端连接)来通过网络连接到远程队列管理器(即在远程主机上运行的 qmgr)。该通道连接到 qmgr 并为您发送/获取消息。对于本地 qmgr,您可以在绑定模式下连接(这就是您所做的)。此模式绕过网络堆栈并使用共享内存和信号量连接到 qmgr。

这是 IBM MQ 中的基本技术概念之一。我建议阅读 MQ 入门。它很小,涵盖了您在使用 MQ 之前需要了解的所有内容。

http://www.redbooks.ibm.com/redpapers/pdfs/redp0021.pdf

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-29
    • 1970-01-01
    相关资源
    最近更新 更多