Tibco EMS:不承认消息

时间:2015-08-16 18:14:14

标签: java tibco-ems

我有N个tombcat服务器正在侦听Tibco EMS队列。我必须发送N个消息,每个消息必须由特定服务器处理(消息1必须由tomcat服务器1处理,...,消息N必须由服务器N处理)

由于消息将由随机机器接收,我需要拒绝服务器N-1上的消息N,并将其返回队列,直到服务器N处理它为止。

我做了什么,在接收到另一个队列的消息时,我在消息处理程序上抛出异常,但我不知道消息是否会返回到队列,并且会被转发到其他实例?

在未确认消息时,是否存在Tibco EMS的重试次数/次数?

1 个答案:

答案 0 :(得分:2)

首先:您是否考虑过使用以下任一方法:A - 每台服务器一个队列?或B - 基于消息选择器的系统? (目标服务器N的名称由发件人在JMS属性“DestName”中写入,并且每个Tomcat服务器订阅同一队列,但使用消息选择器“DestName = MyTomcatID”)。

如果以上都不可能,那么请记住,如果你想要一个未提交的消息回滚到队列中,那么必须使用JMS transactions ...并且下一个服务器读取是随机的......不是循环的。