运行代理
运行一个ActiveMQ代理
注意:如果你想使用嵌入式代理那么你要查阅如何在连接内部嵌入代理。
ActiveMQ的执行程序发行版有一个脚本称之为:activemq——它允许你可以运行一个代理。输入下面的命令开始一个ActiveMQ代理:
activemq
运行activeMQ可以带有许多命令行参数,下面的命令可以查看他们的类型:
activemq -?
关于activemq脚本和其他脚本文件更详细的内容请参考ActiveMQ命令行工具手册。
你可以使用单独的URI(代理配置URI)来指定如何开始并配置你的代理,例如:
activemqbroker:(tcp://localhost:61616,network:static:tcp://remotehost:61616)?persistent=false&useJmx=true
或者你也可以使用代理XBeanURI来指定Xml配置文件启动自定义的消息代理。例如:
activemq xbean:foo.xml
或者使用属性文件来自定义消息代理(代理属性URI),这可以避免依赖Spring、xben-spring和XML。
activemq properties:foo.properties
使用Unix外壳的请注意:
如果你通过telnet/ssh来在远程的计算机上运行代理,当退出的时候,代理也会终止。如果你想保持代理的运行,你需要使用/etc/init.d服务来运行代理。或者尝试使用nohup命令:
nohup activemq > /dev/null &
监控代理的运行
有几种不同的方法可以监控ActiveMQ的运行。如果你使用的是版本4.2以上,你可以使用Web控制台来监控:
网址为http://localhost:8161/admin
或者使用JMX支持来查看ActiveMQ的运行状态。
在一个servlet引擎内部运行代理
如何使用sping在web应用的内部运行代理请查看Web控制台示例的源代码。
在你的J2EE应用服务器内部运行代理
不论是ApacheGeronmio、JBoss 4、WebLogic还是其他的J2EE 1.4容器,你应该能够从新配置和发布activemq-*.rar,它包含在执行程序的发行版中,作为你应用服务器的配置单元。缺省情况下,rar并没有配置为开始一个嵌入代理。而是通过在资源适配器的配置文件中设置brokerXmlConfig,资源适配器会开始一个嵌入的代理
更详细的内容查阅J2EE。
从源代码开始运行代理
从网络的源代码中签出最新的代码,使用ActiveMQ性能插件可以运行代理。
从maven开始运行代理
下载并安装ActiveMQStartup Maven Plugin,如果你的目录中有pom.xml文件,运行下面的命令:
mvnorg.apache.activemq.tooling:maven-activemq-plugin:5.0-SNAPSHOT:run
你也可以把它包含在pom中并运行它:
mvn activemq:run
处理JMS代理的崩溃
有一个通用的要求是在JMS代理失败后,你想要自动的探测到失败,并在后台从新连接,而你的应用程序不必担心从新连接。
详细的内容请参阅配置版本5端口;简而言之:
只要更改你的连接URI为:
failover:tcp://host:port