我正在为 C++ 使用 ActiveMQ。在我们计划的设计中,我们将使用消息,将它们传递给一些异步处理,然后才将消息视为已处理。我们希望并行处理多个消息——每个消息将在不同的时间完成处理——并且只确认那些完成处理的消息。这是为了避免在服务器宕机、进程崩溃等情况下丢失消息。
从文档和测试中,我了解到在 CLIENT_ACKNOWLEDGE 和 SESSION_TRANSACTED 模式下,没有办法只确认一条消息。这种情况有最佳实践吗?我应该持有一个“会话池”,每个会话一次同步处理一条消息然后确认它吗?
谢谢。