gpt4 book ai didi

java - JmsTemplate批量问题

转载 作者:行者123 更新时间:2023-12-02 02:51:57 25 4
gpt4 key购买 nike

我当前的用例在我的监听器中,它将:

  1. 从队列中使用一个事件(我们称之为原始事件),该事件包含重播事件列表(我们称之为子事件)。
  2. 批量生成这些重播事件(子事件)到其他队列。
  3. 更新 Cassandra。

我可以根据Gary提到的内容生成所有重播事件,并在生成过程中发生任何异常时回滚所有重播事件。

Use one of the execute methods with a ProducerCallback...

SessionCallback and ProducerCallback

Then, in your ProducerCallback.doInJms() method...

Use the producer to send multiple messages. When the callback exits, the transaction will be committed.

但是,如果第 3 步中发生任何异常,我们只能回滚原始事件,而不能回滚那些重播事件,因为在第 2 步中我们已经提交了这些重播事件回调退出后的事件以及那些已经在另一个队列中且无法回滚的重放事件。

如果第 3 步出现异常,有人对我们如何回滚所有内容有更好的想法吗?

最佳答案

您必须在同一 session 中完成所有操作;消费、生产……, Cassandra 。

全部在doInJms()内...

  • session.createConsumer()

尝试{

  • consumer.receive()
  • 生产者 send() ...
  • Cassandra 更新

终于{

  • consumer.close()

}

关于java - JmsTemplate批量问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43690507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com