首页 文章

多个tomcats中 spring 集成应用程序中的重复消息处理

提问于
浏览
0

我有 Spring 季网络/集成应用程序 . 为了在后台运行长时间运行的进程,我使用MongoDbMessageStore支持的队列并每隔一秒轮询一次队列 .

我尝试从两个tomcat实例上运行的同一个应用程序向网关发送消息(每个实例1000条消息) . 我验证了服务器1处理的消息没有被服务器2处理,反之亦然 . 我看到了存储在mongo集合中的文档 . 它有UUID(消息ID)和_group_complete,但我无法断定如果应用程序在具有单个momgodb实例的多个实例上运行,spring如何避免重复的消息处理 .

感谢您的帮助 .

1 回答

  • 0

    因为 MongoDbMessageStore 使用 findAndRemove 操作 .

    这是分布式环境的预期行为 .

    如果你说相反的话会更糟 .

相关问题