官网:http://activemq.apache.org/
ActiveMQ是一个消息中间件,在大型互联网应用中有广泛的使用。
当前最新版本:5.15.4,发布于2018-05-22,开源、Apache 2.0许可证。
来自Apache基金会,是一个流行且强大的 开源 消息和继承模式服务器(messaging and Integration Patterns server)。
关于Integration Patterns,笔者是第一次听到,之前只了解消息中间件。ActiveMQ的官文介绍:通过使用Apache Camel库,ActiveMQ从5.0版本开始就支持全部的企业级集成模式。开发者可以添加任何支持的企业级集成模式到ActiveMQ中,用于支持smart routing、transformation和a whole host of other powerful patternns。
ActiveMQ响应速度很快,支持多种语言客户端和协议,可以轻松使用企业级集成模式以及许多高级特性,比如,全面支持JMS 1.1和J2EE 1.4。
关于多种语言客户端和协议简介:
ActiveMQ使用Java编写;
支持JMS、REST、WebSocket(HTML5)接口,并且还支持AMQP、MQTT、OpenWire和STOMP协议,这意味着它可以被各种语言的应用使用。
各种语言的开发库(libraries):
.NET, C, C++, Erlang, Go, Node.js, Python, Ruby on Rails, etc.(部分)
在官文中,还有各种用各种语言开发的示例(Python和Java):
关于AMQP、MQTT、OpenWire和STOMP的简介:
-AMQP
Advanced Message Queuing Protocol,官网,2014年成为OASIS标准。
-MQTT
最后更新时间是2014年11月7日的MQTT v3.1.1,是一个OASIS标准,见官网。
-OpenWire
OpenWire是一个跨语言的线协议(Wire Protocol),允许从一些语言或平台在本地访问ActiveMQ。Java OpenWire传输层是ActiveMQ 4.0及以后版本的默认传输层。NMS用于C#,CMS用于C++。
注意:OpenWire是设计用于高性能和特性使用,它是ActiveMQ内部使用的协议。如果要使用更简单的协议,尝试使用STOMP。
-STOMP
the Simple (or Streaming) Text Orientated Messaging Protocol,最新版本1.2,最后更新时间为 2012年10月22日,官网。
ActiveMQ支持STOMP,并且支持STOMP-JMS映射,这使得它很容易使用纯Ruby, Perl, Python或PHP编写与之工作的客户端。
官文介绍的ActiveMQ支持的所有协议列表:
ActiveMQ的Getting Started:里面有安装、启动、初步测试的内容。下面是笔者的示范:
Windows 10家庭中文版
概述:下载,解压,命令行进入解压目录,使用bin目录下的activemq的start命令启动,打开浏览器访问本机的8161端口即可进入ActiveMQ的管理页面,其中,Queues为空、Topics中有一个默认的。
默认账号/密码:admin/admin
之后,就是学习ActiveMQ的配置了,两种方式:
更多关于配置的内容,请参考Configuration ActiveMQ。
问题:
要发送什么消息到Broker呢?
生产者、消费者怎么建立呢?
生产消息、消费消息会是个什么样子?
哪些消息的传递会用到ActiveMQ等消息中间件呢?看了一篇文章,和业务逻辑没有强依赖的~看来,还是经验不够啊,
来句加油,