ActiveMQ简介

ActiveMQ是什么

ActiveMQ是Apache推出的,一款开源的,完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现的消息中间件(Message Oriented Middleware,MOM)

 ActiveMQ能干什么

最主要的功能就是:实现JMS Provider,用来帮助实现高可用、高性能、可伸缩、易用和安全的企业级面向消息服务的系统

 ActiveMQ特点

完全支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)


支持多种传送协议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA


可插拔的体系结构,可以灵活定制,如:消息存储方式、安全管理等


很容易和Application Server集成使用


多种语言和协议编写客户端。语言: Java,C,C++,C#,Ruby,Perl,Python,PHP


从设计上保证了高性能的集群,客户端-服务器,点对点


可以很容易的和Spring结合使用


支持通过JDBC和journal提供高速的消息持久化


支持与Axis的整合


消息中间件


MOM基本功能:将信息以消息的形式,从一个应用程序传送到另一个或多个应用程序。

MOM主要特点:

1:消息异步接受,类似手机短信的行为,消息发送者不需要等待消息接受者的响应,减少软


件多系统集成的耦合度;


2:消息可靠接收,确保消息在中间件可靠保存,只有接收方收到后才删除消息,多个消息也


可以组成原子事务


消息中间件的主要应用场景:

在多个系统间进行整合和通讯的时候,通常会要求:


1:可靠传输,数据不能丢失,有的时候,也会要求不能重复传输;


2:异步传输,否则各个系统同步发送接受数据,互相等待,造成系统瓶颈


目前比较知名的消息中间件:

IBM MQSeries


BEA WebLogic JMS Server


Oracle AQ


Tibco


SwiftMQ


AcitveMQ:是免费的java实现的消息中间



ActiveMQ安装和基本使用


下载并安装ActiveMQ服务器端

1:从http://activemq.apache.org/download.html下载最新的ActiveMQ


2:直接解压,然后拷贝到你要安装的位置就好了


启动运行

1:普通启动:到ActiveMQ/bin下面,./activemq start


2:启动并指定日志文件 ./activemq start > /tmp/activemqlog


检查是否已经启动

ActiveMQ默认采用61616端口提供JMS服务,使用8161端口提供管理控制台服


务,执行以下命令以便检验是否已经成功启动ActiveMQ服务:


1:比如查看61616端口是否打开: netstat -an | grep 61616


2:也可以直接查看控制台输出或者日志文件


3:还可以直接访问ActiveMQ的管理页面:http://127.0.0.1:8161/admin/


默认的用户名和密码是admin/admin




Apache ActiveMQ 重启_Apache ActiveMQ 重启

关闭ActiveMQ


可以用./activemq stop
暴力点的可以用ps -ef | grep activemq 来得到进程号,然后kill掉



注在windows上启动时报错


Caused by: java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext



需要


解决方式:
1.确认计算机主机名名称没有下划线;

2.如果是win7,停止ICS(运行-->services.msc找到Internet Connection Sharing (ICS)服务,改成手动启动或禁用)

重新启动activeMQ即可。