我正在尝试配置连接到集群MQ的集群Websphere应用程序服务器。
但是,我所掌握的信息是两个具有不同主机名,属于同一MQ集群名称的服务器通道和队列管理器的MQ实例的详细信息。
在Websphere控制台上,我可以看到主机名,队列管理器和服务器通道的输入字段,找不到任何可以指定多个MQ详细信息的内容。
如果我选择其中一个MQ详细信息,那么MQ集群是否仍然有效?如果没有,考虑到我的详细信息,我将如何启用MQ集群?
WebSphere MQ集群影响队列管理器之间如何进行对话的行为。它并没有改变应用程序如何连接或会谈到队列管理器,从而提出这样的问题似乎要假定某种集群行为不存在WMQ的。
要使用两个地址设置应用服务器,请参阅WAS v7知识中心中的使用WebSphere MQ消息传递提供程序定制属性配置多实例队列管理器连接,以获取有关如何使用多实例CONNAME
值配置连接工厂的说明。
如果您在“连接工厂”中指定了有效的QMgr名称,并且应用程序连接到的QMgr没有该特定名称,则连接将被拒绝。通常,多实例CONNAME
用于连接到多实例QMgr。这是一个单一的高可用性队列管理器,可以位于两个不同的IP地址之一,因此在这种情况下使用真实的QMgr名称是可行的。但是,如果到您的应用程序连接QMgrs是两个截然不同的命名队列管理器,这是你所描述的,你应该指定一个星号(一个*
在连接工厂所描述的人物)作为队列管理器名称这里。这样,应用程序在获得连接时将不会检查QMgr的名称。
如果我选择其中一个MQ详细信息,那么MQ集群是否仍然有效?如果没有,考虑到我的详细信息,我将如何启用MQ集群?
取决于您所说的“聚类”。如果您认为该应用程序将看到一个由两个队列管理器托管的逻辑队列,则不会。这不是WMQ群集的工作方式。承载集群队列的每个队列管理器都会获取发送到该队列的消息的子集。因此,从该队列中获取的所有应用程序都只会看到本地子集。
但是,如果您打算通过“集群”方式交替连接到两个队列管理器中的一个或另一个,并且将消息传输到位于同一集群中但未托管在您要连接的两个QMgr中的一个上的队列,则可以会很好的工作。如果您的连接工厂仅知道两个QMgr之一,则您将仅连接到该QMgr,并且向群集发送消息仍然可以进行。但是,请按照我提供的链接中的说明进行设置,您的应用程序将能够连接到两个QMgr之一,并且您可以通过停止其连接到的一个通道并观察它与另一个连接的通道来轻松地进行测试一。
祝你好运!
更新:
为了清楚起见,提供的细节类似于hostname01,qmgr01,queueA,serverchannel01。另一个是主机名02,qmgr02,queueA,serverchannel02。
WMQ客户端CONNAME
仅在以下情况下才使用多实例连接到两个不同的QMgr :
*
发出连接请求时(即在连接工厂中),应用程序使用星号(字符)或QMgr名称的空格。通过使用客户端连接定义表(也称为CCDT),可以使WMQ连接到几个不同的队列管理器之一,其中每个通道管理器的通道名称都不同。CCDT是您使用MQSC
命令定义CLNTCONN
通道创建的已编译工件。它包含客户端有资格连接到的每个QMgr的条目。每个可以具有不同的QMgr名称,主机,端口和通道。但是,在定义CCDT
管理员时,管理员将定义所有条目,以便将QMgr名称替换为应用程序高级限定符。例如,薪资应用程序想要连接到3个不同的QMgr中的任何一个。该管理员WMQ定义了三个项目,但使用CCDT PAY01
,PAY02
和PAY03
QMgr名称。请注意,这不需要与实际的QMgr名称匹配。然后,应用程序将QMgr名称指定为PAY*
在CCDT中选择所有三个QMgr的名称。
有关CCDT的更多详细信息,请参阅将客户机通道定义表与WebSphere MQ JMS一起使用。
MQ集群与应用程序服务器集群不同吗?
一点都不。
其中两个子节点连接到群集。F5 URL将用于将负载分配到每个节点。WMQ是否不附带我们只是向其发送消息的群集url / f5,并且消息的分区是透明的?
否。WMQ群集提供了一个名称空间,应用程序和QMgr可以在该名称空间中解析非本地对象,例如队列和主题。连接到WebSphere MQ集群的唯一一件事就是队列管理器。应用程序和人工用户始终连接到特定的队列管理器。可能有一组可互换的队列管理器,例如CCDT,但每个都是独立的。
使用WAS,消息传递引擎可以在多个节点上运行,但是它提供了一个逻辑队列,应用程序可以从中获取消息。使用WMQ,承载该队列的每个节点都可以获取消息的子集,而使用这些消息的任何应用程序都只能看到该子集。
HTTP是无状态的,因此F5 URL非常有效。当它确实维护会话时,该会话的存在主要是为了优化离开连接的开销,并且往往寿命很短。WMQ客户通道是有状态的,可以协调单阶段和两阶段的工作单元。如果应用程序在UOW期间故障转移到另一个QMgr,则它无法协调该UOW。
由于WMQ连接的性质,在QMgr之间从未使用F5 。它仅在客户端和QMgr之间用于连接平衡,而不用于消息流量平衡。此外,不存在或不存在MQ集群对应用程序是完全透明的,在任何一种情况下,该应用程序都简单地连接到QMgr以获取和/或放置消息。CONNAME
通过提供客户端可以连接到的多个等效QMgr,使用多实例或CCDT文件可以使连接更稳定,而与WMQ群集无关。
有帮助吗?
请参阅:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句