1. 基本了解
这一部分内容主要来源网络,这里整理归纳到博客中,阅读之后对ActiveMq有一个基本的认知和了解。
1. ActiveMQ概念
ActiveMQ是Apache推出的,一款开源的,完全支持JMS1.1和J2EE 1.4规范的JMSProvider实现的消息中间件(Message Oriented Middleware,MOM)。
2. ActiveMQ作用
最主要的功能就是:实现JMS Provider,用来帮助实现高可用、高性能、可伸缩、易用和安全的企业级面向消息服务的系统。
3. 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提供高速的消息持久化
2. 基本安装和配置
这一部分阅读后了解activemq在windows和linux下的安装和基本配置。
windows下activemq的安装
1.到官网下载activemq,windows下下载zip包,linux下下载gz包,这里下载的是5.15.0的版本。
2.解压到任意目录,但是看官网说如果文件路径过长可能会有问题,为求稳妥,目录不要放的过深。
3.到activimq解压目录下的bin目录中的win64去运行activemq.bat(我的电脑是win7 64位),直接运行bin目录下的activemq.bat我的会直接闪退,注意activemq的启动需要jdk的环境。
4.启动成功后,在浏览器中输入:http://localhost:8161/admin/ 打开activemq的管控台,用户名和密码默认都是admin,登陆进去后可看到管控界面。
windows下activemq的简单配置
1.管控台密码配置,也就是上面输入的admin
在安装目录下的conf/jetty.xml
中有如下内容
确保 authenticate 的值为true(默认就为true)
控制台的登录用户名密码保存在conf/jetty-realm.properties
文件中,内容如下:
2.安全配置(消息安全)
ActiveMQ 如果不加入安全机制的话,任何人只要知道消息服务的具体地址(包括 ip,端口,消息地址[队列或者主题地址]),就可以任意的发送、接收消息。关于 ActiveMQ 的安全可以参考官方的安全配置方式,我们这里使用配置简单授权方式:
在 conf/activemq.xml
文件中在 broker 标签最后加入以下内容即可:
这里定义用户名为 yourname,密码为 yourpwd,角色为 users,admins,如果这里做了配置,那么在编写客户端创建连接工厂时需要指定用户名和密码,在之后的代码中会注释说明。注意配置了这个之后,浏览器的控制台就无法查看该队列的信息了(我这里是无法查看了)
linux(CentOS)下activemq的安装
1.到官网下载activemq,windows下下载zip包,linux下下载gz包,这里下载的是5.15.0的版本。
2.将下载的gz包上传至linux系统中,也可以直接在linux的存放目录下直接下载
3.解压安装
4.启动执行:进入解压后的目录的bin目录中,如果启动脚本 activemq 没有可执行权限,此时则需要授权,执行如下命令即可:
5.防火墙中打开对应的端口:ActiveMQ 需要用到两个端口,
一个是消息通讯的端口(默认为 61616),
一个是管理控制台端口(默认为 8161)可在 conf/jetty.xml
中修改,默认如下:
在防火墙中添加端口命令如下:
在文件中添加如下配置:
重启防火墙,启动ActiveMQ
在浏览器上访问:http://linux的IP地址:8161 用户名及密码默认都为admin
linux下activemq配置和说明同windows相同
1.管控台密码配置,也就是进入网页管控台时输入的admin
在安装目录下的conf/jetty.xml
中有如下内容
确保 authenticate 的值为true(默认就为true)
控制台的登录用户名密码保存在conf/jetty-realm.properties
文件中,要执行的命令及文件内容如下:
|
|
2.安全配置(消息安全)
ActiveMQ 如果不加入安全机制的话,任何人只要知道消息服务的具体地址(包括 ip,端口,消息地址[队列或者主题地址]),就可以任意的发送、接收消息。关于 ActiveMQ 的安全可以参考官方的安全配置方式,我们这里使用配置简单授权方式:
为了activeMQ的消息安全性在 conf/activemq.xml
文件中的 broker 标签最后加入以下内容后保存退出(按esc键,按shift+:键,输入wq,按enter键):
这里定义用户名为 yourname,密码为 yourpwd,角色为 users,admins,如果这里做了配置,那么在编写客户端创建连接工厂时需要指定用户名和密码,在之后的代码中会注释说明。注意配置了这个之后,浏览器的控制台就无法查看该队列的信息了(我这里是无法查看了)
以上关于ActiveMQ的在windows和linux环境下的安装及简单配置,整理完收工。