可以在 Wildfly 的 JVM 中启动 JMS 代理,因此无需设置不同的 ActiveMQ 服务器。
我所做的只是更改standalone.xml 中的传输协议
发件人:
tcp://localhost:61616?jms.rmIdFromConnectionId=true
收件人:
vm://localhost?broker.persistent=false
将持久性设置为 false 以避免持久性配置很重要。另外,也可以通过参数 brokerConfig=xbean:activemq.xml 来设置 ActiveMQ 配置文件
监控 JMS 队列
现在 ActiveMQ 控制台已关闭,您可能想知道如何检查队列。您可以通过连接到 Wildfly JVM 的 JMX 环境来实现。
你有两个选择:
-使用 ActiveMQ Web 控制台
- 使用 JConsole
- 使用 ActiveMQ Web 控制台
要在 Wildfly 中启用 ActiveMQ 控制台,只需两个步骤:
在standalone.xml中设置JVM系统参数,通知ActiveMQ控制台应用程序通过JMX连接。在 extensions 标签下添加以下 JVM 系统参数:
部署 ActiveMQ 控制台战争。这场战争包含 jboss-client.jar(在 /lib 下)。
ActiveMQ 应该在此 WildFly 上下文下运行
http://localhost:8080/activemq-web-console-5.11.1/
- 使用 JConsole
只需通过将jar jboss-cli-client.jar 添加到其类路径中来使用JConsole。我添加了 bat 文件以在 Windows 上运行 jconsole。只需设置 JAVA_HOME 和 JBOSS_JAR。
设置 JAVA_HOME=
设置 JBOSS_JAR=
%JAVA_HOME%\bin\jconsole -J-Djava.class.path=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\jconsole.jar;%JBOSS_JAR%\jboss-cli-client.jar "
在 JConsole 中的新连接上,选择远程进程。设置值为:
服务:jmx:http-remoting-jmx://localhost:9990
用户名:你的管理员用户名
密码 : your_admin_password
会出现几个标签。
转到MBeans选项卡,org.apache.activeMQ子树将出现在左侧。
如需进一步参考,请参阅:
http://javagoogleappspot.blogspot.be/2015/12/embed-your-activemq-broker-within-your.html