消息通道和消息队列本身有什么区别?
它们是不同的东西。队列实际上保存将以FIFO方式处理(推送到监听器)的消息。
通道是传输消息的媒介。
这到底意味着什么?在一本名为“企业集成模式”的书中,它说:
使用消息通道连接应用程序,在其中一个应用程序将信息写入通道,另一个应用程序从通道中读取该信息。
这是否意味着这个消息通道实际上将队列抽象化了,使消息的生产者和消费者无需直接与队列打交道呢?但事实并非如此吧?当生产者需要将消息放入队列时,它实际上指定了要连接的队列管理器和队列名称。
还有通道中不同协议和不同数据格式的概念,在其中您可能会为每个使用的协议设置单独的通道,并为每种数据格式(XML、JSON等)设置单独的通道。这将便于不同的队列从不同的通道中获取消息。但为什么不为不同的数据格式直接调用不同的队列呢?通道的作用究竟是什么?它只是一个连接吗?
我对MQM完全是新手。我刚被分配到这个涉及生产和消费消息的项目中,并且正在努力理解。
DEFINE Q(myQueue)PER(PERS)
配置通道以保持持久性。 - Konstantinos