ActiveMQ是一个易于使用的消息中间件。web
消息中间件
咱们简单的介绍一下消息中间件,对它有一个基本认识就好,消息中间件(MOM:Message Orient middleware)。apache
消息中间件有不少的用途和优势:
1. 将数据从一个应用程序传送到另外一个应用程序,或者从软件的一个模块传送到另一个模块;
2. 负责创建网络通讯的通道,进行数据的可靠传送。
3. 保证数据不重发,不丢失
4. 可以实现跨平台操做,可以为不一样操做系统上的软件集成技工数据传送服务后端
MQ
首先简单的介绍一下MQ,MQ英文名MessageQueue,中文名也就是你们用的消息队列,干吗用的呢,说白了就是一个消息的接受和转发的容器,可用于消息推送。浏览器
下面进入咱们今天的主题,为你们介绍ActiveMQ:安全
ActiveMQ
下载ActiveMQ
官方网站:http://activemq.apache.org/
如今ActiveMQ最新的版本是5.11.1,下载挺简单的,就再也不截图了。服务器
运行ActiveMQ服务
- 下载,解压缩
你们如今好以后,将apache-activemq-5.11.1-bin.zip解压缩,咱们能够看到它的总体目录结构:

从它的目录来讲,仍是很简单的:
- bin存放的是脚本文件
- conf存放的是基本配置文件
- data存放的是日志文件
- docs存放的是说明文档
- examples存放的是简单的实例
- lib存放的是activemq所需jar包
- webapps用于存放项目的目录
- 启动ActiveMQ
咱们了解activemq的基本目录,下面咱们运行一下activemq服务,双击bin目录下的activemq.bat脚本文件或运行本身电脑版本下的activemq.bat,就能够看下图的效果。

从上图咱们能够看到activemq的存放地址,以及浏览器要访问的地址.
3. 测试网络
ActiveMQ默认使用的TCP链接端口是61616, 经过查看该端口的信息能够测试ActiveMQ是否成功启动 netstat -an|find “61616”app
C:\Documents and Settings\Administrator>netstat -an|find "61616"
TCP 0.0.0.0:61616 0.0.0.0:0 LISTENING
4. 监控
ActiveMQ默认启动时,启动了内置的jetty服务器,提供一个用于监控ActiveMQ的admin应用。
admin:http://127.0.0.1:8161/admin/webapp
用户名和密码都是adminide

5. 至此,服务端启动完毕
中止服务器,只须要按着Ctrl+Shift+C,以后输入y便可。
咱们简单说说ActiveMQ特性,网上不少,只是为了保证博文的完整。
ActiveMQ特性列表
- 多种语言和协议编写客户端。语言: Java, C, C++, C#, Ruby, Perl, Python, PHP。应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP
- 彻底支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)
- 对Spring的支持,ActiveMQ能够很容易内嵌到使用Spring的系统里面去,并且也支持Spring2.0的特性
- 经过了常见J2EE服务器(如 Geronimo,JBoss 4, GlassFish,WebLogic)的测试,其中经过JCA 1.5 resource adaptors的配置,可让ActiveMQ能够自动的部署到任何兼容J2EE 1.4 商业服务器上
- 支持多种传送协议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA
- 支持经过JDBC和journal提供高速的消息持久化
- 从设计上保证了高性能的集群,客户端-服务器,点对点
- 支持Ajax
- 支持与Axis的整合
- 能够很容易得调用内嵌JMS provider,进行测试
什么状况下使用ActiveMQ?
- 多个项目之间集成
(1) 跨平台
(2) 多语言
(3) 多项目
- 下降系统间模块的耦合度,解耦
(1) 软件扩展性
- 系统先后端隔离 (1) 先后端隔离,屏蔽高安全区