Java TIBCO尝试确认消息对此使用者无效

Java TIBCO尝试确认消息对此使用者无效,java,jms,message-queue,tibco,tibco-ems,Java,Jms,Message Queue,Tibco,Tibco Ems,我正在尝试通过TIBCO EMS发布消息。在处理了几条消息后,我自动得到了这个错误,处理停止了。再过一段时间,我可以处理10K左右的消息。这是我得到的错误。请就此提出建议 2016-11-30 13:39:31,170 ERROR c.b.e.d.AckMessageListenerController - Listener for Queue[TEST.DEV.QUE] throwed an exception, closing session to avoid possible messag

我正在尝试通过TIBCO EMS发布消息。在处理了几条消息后,我自动得到了这个错误,处理停止了。再过一段时间,我可以处理10K左右的消息。这是我得到的错误。请就此提出建议

2016-11-30 13:39:31,170 ERROR c.b.e.d.AckMessageListenerController - Listener for Queue[TEST.DEV.QUE] throwed an exception, closing session to avoid possible message loss
javax.jms.IllegalStateException: Attempt to acknowledge message(s) not valid for this consumer

查看此队列有多少消费者。 此错误表示您正在尝试确认此消息,但此消息并非针对您。
进程是否从任何checkopint开始?

查看此队列有多少消费者。 此错误表示您正在尝试确认此消息,但此消息并非针对您。
流程是否从任何checkopint开始?

此场景是否表示同一会话中队列只有两个接收者?在此场景中,此队列的连接是否过期?此场景是否表示同一会话中队列只有两个接收者?在此场景中,这个队列有陈旧的连接吗?没有。这些消息由同一服务器生成和使用。我们有这样的设计来在两个不同的应用层之间进行通信。当我检查队列属性时,我发现没有设置flowcontrol、expiration属性。所以,会不会出现这样一种情况:消息在被消费者消费之前在队列中过期。这是有效的方案吗?我们使用客户端确认作为确认模式。当制作人快速推送消息,而消费者非常缓慢地接收消息时(尽管这肯定表明消费者端的代码泄漏),好的做法是什么?不。这些消息由同一服务器生成和使用。我们有这样的设计来在两个不同的应用层之间进行通信。当我检查队列属性时,我发现没有设置flowcontrol、expiration属性。所以,会不会出现这样一种情况:消息在被消费者消费之前在队列中过期。这是有效的方案吗?我们使用客户端确认作为确认模式。当制作人快速推送消息而消费者非常缓慢地接收消息时(尽管这肯定表明消费者端的代码存在泄漏),好的做法是什么