java - 在同一服务器上创建 IBM MQ 连接的最佳方法

标签 java ibm-mq

使用 java 连接到 IBM MQ,但应用程序和 MQ 驻留在同一服务器上。在这种情况下,我是否需要指定主机、端口、 channel 等,或者只有队列管理器可以,或者任何更好的方法。

我知道如何使用主机、端口、 channel 和队列名称进行连接。

当应用程序和队列管理器驻留在同一服务器上时,最佳连接方法是什么。

最佳答案

如果应用程序和队列管理器在同一台计算机上运行,​​则不需要使用客户端连接(即使用主机、端口和 channel 名称)进行连接,而是可以使用所谓的本地绑定(bind)连接,并且只需提供队列管理器名称。

对于客户端连接,到队列管理器的连接是通过 TCP/IP 套接字建立的。

对于本地绑定(bind)连接,与队列管理器的连接是使用共享内存建立的。

根据您使用的 MQ Java 接口(interface),查看以下示例。

适用于 Java 的 IBM MQ 类

查看示例 MQSample.java,它创建了一个非常简单的本地绑定(bind)连接。

用于 JMS 的 IBM MQ 类

以 JmsBrowser 示例为例。它可以使用客户端或本地绑定(bind)连接。查看 boolean 值 clientTransport 并遵循相应的代码。

关于java - 在同一服务器上创建 IBM MQ 连接的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55385917/

相关文章:

java - 使用Thread.yield()时这三个线程不轮流?

c# - MQQueueManager 消息池

java - 如何为 Websphere MQ 客户端启用带有客户端证书的 SSL?

azure - 从 Azure 逻辑应用读取 IBM 队列消息时出现 "Inquire"错误

java - IN 子句在PreparedStatement 上仅返回 1 行

java - rs.last() 给出 Invalid operation for forward only resultset : last

java - java中带定时器的单线程程序

java - Mybatis,封闭 OR 与 SQL 构建器

ibm-mq - 何时在 MQ 中使用客户端连接 channel ?

java - 使用 JMS 的 WebSphere MQ