我已经配置了两台服务器和一台活动的mq服务器。
一台服务器将发送JMS消息,而另一台服务器将从活动的mq服务器接收JMS消息。
通常我们将逐个启动活动的mq服务器和服务器。
现在其中一个服务器get已成功启动,而其他throws因为端口已绑定而绑定异常1099。
我已验证过程中没有一个使用端口1099。
如果无法解决方案,需要解决方法。
异常堆栈跟踪
[Apr 10 09:58:37] [/] WARN org.apache.activemq.broker.jmx.ManagementContext
(JCLLoggerAdapter.java:359) - Failed to start jmx connector: Cannot bind to URL
[rmi://localhost:1099/jmxrmi]: javax.naming.NameAlreadyBoundException: jmxrmi [Root
exception is java.rmi.AlreadyBoundException: jmxrmi]
[Apr 10 09:58:37] [/] WARN org.apache.activemq.broker.jmx.ManagementContext
(JCLLoggerAdapter.java:359) - Failed to start jmx connector: Cannot bind to URL
[rmi://localhost:1099/jmxrmi]: javax.naming.NameAlreadyBoundException: jmxrmi [Root
exception is java.rmi.AlreadyBoundException: jmxrmi]
[Apr 10 09:58:37] [/] DEBUG org.apache.activemq.broker.jmx.ManagementContext
(JCLLoggerAdapter.java:245) - Reason for failed jms connector start
java.io.IOException: Cannot bind to URL [rmi://localhost:1099/jmxrmi]:
javax.naming.NameAlreadyBoundException: jmxrmi [Root exception is
java.rmi.AlreadyBoundException: jmxrmi]
at
感谢。
答案 0 :(得分:1)
如提供的堆栈跟踪所述,两台服务器都在同一端口上启用了远程JMX。使用JVM级别的-Dcom.sun.management.jmxremote.port=portNum
选项来调整JMX端口,或者通过删除-Dcom.sun.management.jmxremote
选项纯粹禁用Remote JMX。这些选项通常位于ActiveMQ启动脚本中。