繁体   English   中英

JMS和Weblogic聚类

[英]JMS and Weblogic Clustering

我正在使用的Weblogic应用程序服务器是群集的。 我有一个JMS队列,它有一个JNDI名称。 当消费者查找jndi名称并在队列上发布事件时,它是否会在两个应用程序服务器中创建的队列中发布? 两台服务器上都将运行相同的MDB - 哪一台将消息发布到队列中? 如果我需要删除放在队列中的消息,我应该遍历所有节点并删除消息吗?

谢谢。

您没有说明您在Weblogic中为此创建的队列类型。 对于集群环境,最好使用DistributedQueue,而不是标准Queue。 我相信它允许Weblogic更好地处理当集群中的一个节点发生故障时如何处理队列中的消息。 还可以选择查看队列的内容并从Weblogic Admin Console中删除消息。

使用队列意味着保证消息只被消耗一次 这意味着,消息将被传递到两个节点,但它只会被其中一个节点全局处理一次 WebLogic处理群集中节点之间的同步和协调,以同时保证传递,但确保在全局范围内只处理一次。

这与主题形成对比,其中每个订阅者都获得消息的副本。 每个订户将处理每条消息一次。

您不需要遍历节点来删除消息...只需获取对队列的jndi引用,并在任何消费者使用它之前删除该消息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM