我有一个具有多个订阅者的 JMS 非持久主题(使用 ActiveMQ)。
每个订阅者都是部署在单独的 Tomcat 实例上的 Web 应用程序。当消息到达时,我希望它传递给所有订阅者(有点像分布式缓存实现)。
我注意到并非总是将消息传递给所有订阅者。在查看 ActiveMQ 管理 UI 时,我看到主题订阅者列表(以及连接列表)不断变化。例如,我看到 17 个订阅者,我刷新 ActiveMQ 管理 UI,然后我看到 19 个订阅者,我再次刷新 - 我看到 18 个等等。
怎么了?我知道所有的雄猫一直都在。我对 JMS 主题的理解是,如果应用程序启动,则应该始终传递消息。我误解了什么吗?我认为该订户“闪烁”没有合乎逻辑的原因。
PS我宁愿不尝试持久主题 - 如果应用程序未启动,我不需要传递消息。