两个不同的JMS队列侦听器(Tibco)的创造性解决方案

时间:2013-03-09 23:46:07

标签: java queue jms listener tibco

我们遇到两种不同的应用程序实例间歇性地在同一队列中侦听的情况。

逻辑解决方案只是将其中一个指向其他位置或关闭一个。

我想知道是否有办法配置Tibco JMS配置以强制关闭,或者只向一个客户端发送消息事件?我一直在寻找一种“开箱即用”的方式来思考这个问题。

2 个答案:

答案 0 :(得分:2)

也许EMS的“独家”功能正是您所寻找的......

通过在队列上设置此属性,一次只能侦听一个侦听器。

以下是相关链接:https://docs.tibco.com/pub/enterprise_message_service_central_administration/1.0.1_may_2009/html/tib_ems_users_guide/wwhelp/wwhimpl/common/html/wwhelp.htm#href=EMS.5.028.htm&single=true

答案 1 :(得分:0)

msgs总是在侦听器之间平均分配。如果需要,可以使用消息选择器。如果QueueReceiver指定了消息选择器,则未选中的消息将保留在队列中。根据定义,消息选择器允许QueueReceiver跳过消息。这意味着当最终读取跳过的消息时,读取​​的总排序不保留每个消息生成器定义的部分顺序。只有没有消息选择器的QueueReceivers才会读取消息生成器顺序中的消息。