【发布时间】:2014-01-21 02:29:10
【问题描述】:
我是使用 ActiveMQ 的新手,我正在尝试了解代理网络的工作原理。我已经阅读了activemq文档以及网上的一些文章,例如http://www.jakubkorab.net/2011/11/understanding-activemq-broker-networks.html
我在本地 Windows 桌面上进行了以下设置。有 2 个 Tomcat 服务器分别在 8080 和 9080 上运行,其中包含一个包含活动 mq 的 Web 应用程序。 Web 应用程序在启动时启动一个代理,因此当两台服务器都启动时我有以下 2 个代理
经纪人 A:在 61616 上运行 经纪人 B:在 61617 上运行
代理 A 的网络连接器设置为与代理 B 建立连接,代理 B 与代理 A 建立网络连接,两者均采用默认配置
我正在观察以下行为
- 当我连接到服务器 A 上的 Web 应用程序时,发布一条消息,在服务器 B 上的 Web 应用程序上启动一个使用者并尝试接收消息,我收到消息,它从代理 A 和 B 中删除。我测试随后尝试使用 receiveSelected 获取消息,但我没有收到任何数据
- 当我连接到服务器 A 上的 Web 应用程序时,发布一条消息,在服务器 A 上的 Web 应用程序上启动一个使用者并尝试接收消息,我收到消息,它从代理 A 和 B 中删除。与测试相同第1点检查
我的问题是,消息会在什么时候从两个代理的商店中删除 - 我只有在消费者请求消息并确认后才删除?这是否意味着在发布消息时在两个代理的本地存储中?
【问题讨论】:
标签: activemq