JMS 个连接和 IBM MQ

有关将 IBM® MQ 用作 JMS 提供程序的信息。

使用 BINDINGS 传输

如果已将连接工厂配置为使用绑定传输,那么每个 JMS 连接都会与 IBM MQ建立对话 (也称为 hconn)。 该对话使用进程间通信(或共享内存)来与队列管理器进行通信。

使用 CLIENT 传输

IBM MQ 消息传递提供程序连接工厂配置为使用客户机传输时,从该工厂创建的每个连接都将建立到 IBM MQ的新对话 (也称为hconn)。

对于使用 IBM MQ 消息传递提供程序正常方式连接到队列管理器的连接工厂,从连接工厂创建的多个 JMS 连接可以共享到 IBM MQ的 TCP/IP 连接。 更多信息,请参阅 IBM MQ classes for JMS 中的共享 TCP/IP 连接

要确定 JMS 连接在任何时候使用的最大客户机通道数,请将指向同一队列管理器的所有连接工厂的 最大连接数 属性的值相加。

例如,假设您有两个已配置为使用同一 IBM MQ 通道连接到同一 IBM MQ 队列管理器的连接工厂 jms/CF1jms/CF2

这两个工厂使用缺省连接池属性,这表示最大连接数设置为 10。 如果同时使用来自 jms/CF1 和 jms/CF2 的所有连接,那么应用程序服务器与 IBM MQ之间将有 20 个对话。

如果连接工厂使用 IBM MQ 消息传递提供程序正常方式连接到队列管理器,那么这些连接工厂的应用程序服务器与队列管理器之间可以存在的最大 TCP/IP 连接数为:
20/<the value of SHARECNV for the IBM MQ channel>

如果将连接工厂配置为使用 IBM MQ 消息传递提供程序迁移方式进行连接,那么应用程序服务器与这些连接工厂的 IBM MQ 之间的最大 TCP/IP 连接数将为 20 (两个工厂的连接池中的每个 JMS 连接一个连接)。