Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java IBM MQ组件之间的逻辑关系是什么?_Java_Jms_Ibm Mq - Fatal编程技术网

Java IBM MQ组件之间的逻辑关系是什么?

Java IBM MQ组件之间的逻辑关系是什么?,java,jms,ibm-mq,Java,Jms,Ibm Mq,我在当前任务中使用IBM MQ和Java客户端应用程序 我想知道IBM MQ组件(如queuemanager、队列、通道和侦听器)之间的逻辑关系 渠道类型及其实际用途 想知道queuemanager如何处理队列、通道以及listner如何侦听请求并将其转发给队列管理器。另外,如果您能够解释客户机应用程序mq队列管理器之间的流,以及托管在两台不同机器上的mq中的两个队列管理器之间的流,那将是非常棒的 谢谢, Sagar从广义上讲,队列管理器是一种消息代理——它是一种承载队列等的软件。队列管理器是一

我在当前任务中使用IBM MQ和Java客户端应用程序

我想知道IBM MQ组件(如queuemanager、队列、通道和侦听器)之间的逻辑关系

渠道类型及其实际用途

想知道queuemanager如何处理队列、通道以及listner如何侦听请求并将其转发给队列管理器。另外,如果您能够解释客户机应用程序mq队列管理器之间的流,以及托管在两台不同机器上的mq中的两个队列管理器之间的流,那将是非常棒的

谢谢,
Sagar

从广义上讲,队列管理器是一种消息代理——它是一种承载队列等的软件。队列管理器是一种可以启动和停止的东西。原则上,同一物理主机上可以有多个队列管理器

队列是一个命名位置,客户端向其生成数据并从中消费数据。这些数据被广泛地称为消息。每个队列将属于特定的队列管理器

通道是一种连接定义——它指定客户端和队列管理器之间通信的低级参数。这些参数包括加密方法等

您询问了通道的类型,但我怀疑与Java程序员相关的唯一类型是标准消息通道,IBM Java库类为其提供了JMS接口。最近的MQ安装也有一个AMQP通道,原则上可以与类似ApacheQPID JMS的AMQPJMS库一起使用。然而,我从来没有使用过AMQP频道,我也不相信它目前被广泛使用

侦听器是等待来自客户端的连接并将其分配给相关队列管理器的进程

然而,这是一个巨大的过度简化


顺便说一句,许多Java开发人员似乎都在与IBM MQ抗争,因为IBM MQ早于Java,而且使用的术语似乎有些过时。没有消息传递中间件经验的Java开发人员可能(可能)会从像ApacheActiveMQ这样的消息传递应用程序中获益,该应用程序从一开始就是为Java设计的。一旦基本原理被理解,ActiveMQ概念就可以很容易地映射到MQ概念上。

我建议去IBM的网站。这是一个很好的资源: