Apache ActiveMQ团队刚刚发布了新的ActiveMQ 5.9版本 。
自从先前的5.8版本以来,此版本是8个月的辛苦工作。
在此发行版中,我们将像往常一样对代理进行增强,并使用最新的协议(例如AMQP和MQTT)。 同样很有趣的是, leveldb持久性存储的强化,现在它还包括新的复制功能 。 随着时间的推移,计划将db默认设置为开箱即用的持久性存储,而不是当前的kahadb存储 。 尽管我们还没有,所以kahadb仍然是默认存储。
另一个很棒的新功能是无需重新启动代理即可对代理进行运行时配置更改的功能。 您还不能更改所有内容,但是,例如,当您具有群集的代理等时,可以更新网络连接器。文档详细说明了可以更新的部分。
对于骆驼的用户来说,有一个新的代理组件 ,可以简化代理间的路由。 Rob Davies以前曾对此进行过博客介绍,并提供了一个有趣的用例,该用例允许使用Camel路由逻辑来决定将消息发送到队列还是应该发送到队列,或者取决于当前队列的深度。
最后但并非最不重要的一点是,Apache ActiveMQ现在随hawtio一起提供 ,它是其现成的新Web控制台。 旧的Web控制台仍然存在,但已被弃用。
我们还清理了conf目录,将所有示例配置都移至examples / conf。
Apache ActiveMQ 5.9 发行说明在此处 。
启动Apache ActiveMQ
试用Apache ActiveMQ很容易。 您转到activemq.apache.org网站,然后单击下载链接。 然后,您可以下载发行版的zip或tgz文件。 然后解压缩/解压缩文件,然后可以从命令行启动代理,如下所示:
davsclaus:/opt$ tar xf ~/Downloads/apache-activemq-5.9.0-bin.tar.gz
davsclaus:/opt$ cd apache-activemq-5.9.0/
davsclaus:/opt/apache-activemq-5.9.0$ bin/activemq console
当代理启动时,它现在记录它提供的所有传输连接器及其URL。
从下面的日志中,我们可以看到…
INFO | Listening for connections at: tcp://davsclaus.air:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600INFO | Connector openwire startedINFO | Listening for connections at: amqp://davsclaus.air:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600INFO | Connector amqp startedINFO | Listening for connections at: stomp://davsclaus.air:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600INFO | Connector stomp startedINFO | Listening for connections at: mqtt://davsclaus.air:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600INFO | Connector mqtt startedINFO | Listening for connections at ws://davsclaus.air:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600INFO | Connector ws started
我们启用了以下传输连接
- openwire –是JMS协议
- amqp – AMQP 1.0
- stomp –是一个非常简单的基于文本的协议,您可以从telnet使用
- mqtt –用于机器对机器的通信
- ws – websocket(stomp或mqtt)
Telnet到代理
例如,使用stomp,我们可以使用telnet连接到代理,然后键入telnet shell stomp命令来连接,发送和接收消息。 例如,我可以输入:
telnet localhost 61613
CONNECT
login:foo
passcode:bar^@
经纪人将回复:
CONNECTED
heart-beat:0,0
session:ID:davsclaus.air-61798-1382433481104-2:1
server:ActiveMQ/5.9.0
version:1.0
然后,我可以断开与:
DISCONNECT^@
Connection closed by foreign host.
这里有一个用户指南,如何将stonet与telnet一起使用 。
访问网络控制台
ActiveMQ代理启动时,它将记录Web控制台的URL:
INFO | ActiveMQ WebConsole available at http://localhost:8161/
因此,只需在该链接上打开一个经纪人即可。 当您访问控制台时,它是安全的,因此您需要登录。 代理附带一个默认用户和密码,您可以在conf / users.properties文件中看到。
还有一个docs / WebConsole-README.txt文件,提供有关Web控制台以及如何打开|关闭登录等的更多详细信息。
例如,使用hawtio Web控制台,我们可以创建队列,并将消息发送到队列。 在下面的屏幕截图中,我创建了两个队列:啤酒和葡萄酒,并向啤酒发送消息。
控制台具有在队列之间移动消息,浏览和删除消息的操作。
死信队列中的消息可以重新提交到其原始队列中,从而可以重试处理消息。
尝试ActiveMQ Web示例
Apache ActiveMQ附带了一些网络示例,您可以通过以下方式启动代理来尝试
bin/activemq console xbean:examples/conf/activemq-demo.xml
要尝试这些示例,请打开位于http:// localhost:8161 /的Web浏览器,然后单击最后一个链接。 PS,您还应该尝试单击Web控制台链接(hawtio),因为Web控制台现在还显示了Camel插件,因为示例之一就是使用Camel。
翻译自: https://www.javacodegeeks.com/2013/10/apache-activemq-5-9-released.html