有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Jms消息确认仅在上确认消息之前

如何确保消息确认只删除在jms代理中调用确认的消息之前的消息。 目前,我有一个系统,它使用jms队列并对其进行部分处理。一段时间后,一批消息被另一个线程持久化。我现在需要确认留言。但问题是我必须停止使用这些消息,否则,确认之前收到的消息也会确认随后收到的所有其他消息

换句话说,假设一个队列中有10条消息。我消费了其中的7个,然后在第5条信息中确认。这将依次从队列中删除消费者收到的所有7条消息。有没有一种方法可以在第五条消息之前只确认和删除队列中的消息

编辑:我尝试过创建两个会话,并从不同的会话中使用,但是(至少使用ApacheQPID)这执行起来不一致。我的意思是,有时在测试过程中,一个消费者能够接收消息,而另一个消费者根本无法接收消息,无论你等待多长时间。这本可以作为解决方案,但由于不一致性,我无法将其用作解决方案


共 (0) 个答案