java - activemq brokerName 总是本地主机?

标签 java linux jms activemq amqp

这可能是一个 n00b 问题,我已经在 CentoOS 上安装了 activemq,当我启动它时,将 brokerName 设置为“Test”:

 sudo activemq start broker:tcp://localhost:61666?brokerName=Test&persistent=true&useJmx=false

然后查询它:

sudo activemq query

代理名称始终是“localhost”...

....
QueueSubscribers = []
Topics = [org.apache.activemq:type=Broker,brokerName=localhost,destinationType=Topic,destinationName=ActiveMQ.Advisory.MasterBroker]
TotalMessageCount = 0
SslURL =
TemporaryQueueSubscribers = []
BrokerName = localhost <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<HERE
DynamicDestinationProducers = []
Persistent = true
DataDirectory = /etc....
....

有人能解释一下吗?当我在示例 Java 类中使用 JMS API 进行连接时,是否像上面那样指定完整的 URL 将其放入该代理?这是要有多个不同名称的经纪人吗?

感谢任何澄清,

最佳答案

根据文档,URI 格式为:

broker:(transportURI,network:networkURI)/brokerName?brokerOptions

因此,在您的情况下:

broker:(tcp://localhost:61666)/Test&persistent=true&useJmx=false

免责声明:尚未验证。

另一种可能更好的方法是指出配置 XML 而不是 URI。这使您可以更精细地控制一切。

关于java - activemq brokerName 总是本地主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16951645/

相关文章:

java - 通过POM入口运行应用程序时如何避免bcprov-jdk16-1.45.jar

java - 组织.json.JSONException : JSONObject ["status"] is not a JSONObject

c++ - 仅静态链接 boost 库 G++

security - ActiveMQ 和客户端通过证书身份验证身份

java - 迭代 ActiveMQ.Advisory.Expired.Queue 中的非持久 activemq 过期消息

java - java中的进程同步

java - Gradle 的 New Relic Android 代理错误

linux - 从python获取IP地址

linux - Sles10 zypper 无法添加存储库

java - Apache Camel 中的窃听和多播有什么区别