代码之家  ›  专栏  ›  技术社区  ›  Sridhar Sarnobat

只读JMS主题订阅(或在出列时保留JMS消息)

  •  0
  • Sridhar Sarnobat  · 技术社区  · 7 年前

    我有一个关于生产环境中客户数据的ActiveMQ消息的积压主题,我需要编写一个脚本,将其出列并执行任何必要的业务逻辑。

    如果业务逻辑出了问题,但我已经阅读了消息(可能是通过JMS),那可能意味着所有的消息都不见了——我会遇到巨大的麻烦。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Justin Bertram    7 年前

    1. 创建会话时使用CLIENT\ u确认模式,并在业务逻辑完成后确认消息。如果业务逻辑失败,则不确认消息,并且不会将其从队列中删除。
    2. 使用事务会话。如果业务逻辑成功完成,那么提交事务。如果业务失败,则回滚事务。

    这两种情况都很常见,您可以使用自己喜欢的搜索引擎找到有关所有正确API调用等的更多信息。