共计 2502 个字符,预计需要花费 7 分钟才能阅读完成。
首先简单的介绍一下 MQ,MQ 英文名 MessageQueue, 中文名也就是大家用的消息队列, 干嘛用的呢,说白了就是一个消息的接受和转发的容器,可用于消息推送。
ActiveMQ 是由 Apache 出品的, 一款最流行的, 能力强劲的开源消息总线。ActiveMQ 是一个完全支持 JMS1.1 和 J2EE 1.4 规范的 JMS Provider 实现, 它非常快速, 支持多种语言的客户端和协议, 而且可以非常容易的嵌入到企业的应用环境中, 并有许多高级功能, 下面我们来安装 ActiveMQ 单机版。
1. 在官网下载 ActiveMQ, 并上传到服务器
2. 解压安装
# tar -zxvf apache-activemq-5.11.1-bin.tar.gz
3. 如果启动脚本 activemq 没有可执行权限, 此时则需要授权
# chmod 755 /opt/activeMQ/apache-activemq-5.11.1/bin/activemq
4. 配置端口
ActiveMQ 需要用到两个端口, 一个是消息通讯的端口(默认为 61616)
一个是管理控制台端口 (默认为 8161) 可在 conf/jetty.xml 中修改, 如下:
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="0.0.0.0"/>
<property name="port" value="8161"/>
</bean>
注: 配置完需要在防火墙中开放对应端口
5. 启动 ActiveMQ
# /opt/activeMQ/apache-activemq-5.11.1/bin/activemq start
6. 访问 ActiveMQ
点击 manage ActiveMQ 出现账号密码校验界面, 默认账号密码为:admin/admin
7. 安全配置
ActiveMQ 如果不加入安全机制的话, 任何人只要知道消息服务的具体地址(包括 IP, 端口, 消息地址[队列或者主题地址]), 都可以肆无忌惮的发送, 接收消息。所以我们要为 ActiveMQ 进行安全配置,ActiveMQ 的消息安全配置策略有多种, 我们以简单授权配置为例。
7.1 在 conf/activemq.xml 文件中在 broker 标签最后加入以下内容即可:
# vim /opt/activeMQ/apache-activemq-5.11.1/conf/activemq.xml
<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="roberto" password="roberto" groups="users,admins"/>
</users>
</simpleAuthenticationPlugin>
</plugins>
定义了一个用户账号为 roberto 密码为 roberto, 对应的角色为 users,admins
7.2 确保启用认证
确保 authenticate 的值为 true
<bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="user,admin" />
<!-- set authenticate=false to disable login -->
<property name="authenticate" value="true" />
</bean>
7.3 控制台的登录用户名密码保存在 conf/jetty-realm.properties 文件中, 内容如下:
# vim /opt/activeMQ/apache-activemq-5.11.1/conf/jetty-realm.properties
# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin: roberto, admin
user: user, user
修改 admin 用户的密码为 roberto
7.4 重启 ActiveMQ
# /opt/activeMQ/apache-activemq-5.11.1/bin/activemq restart
推荐阅读:
Spring+Log4j+ActiveMQ 实现远程记录日志——实战 + 分析 http://www.linuxidc.com/Linux/2015-12/126163.htm
Spring 下 ActiveMQ 实战 http://www.linuxidc.com/Linux/2015-11/124854.htm
Java 消息队列 –ActiveMQ 实战 http://www.linuxidc.com/Linux/2016-12/138848.htm
CentOS 6.5 启动 ActiveMQ 报错解决 http://www.linuxidc.com/Linux/2015-08/120898.htm
ActiveMQ 部署步骤和后台管理网站 Service Unavailable 问题解决 http://www.linuxidc.com/Linux/2016-11/137050.htm
ActiveMQ 的简单使用 http://www.linuxidc.com/Linux/2017-03/142053.htm
Linux 环境下面 ActiveMQ 端口号设置和 WEB 端口号设置 http://www.linuxidc.com/Linux/2012-01/51100.htm
ActiveMQ 的详细介绍:请点这里
ActiveMQ 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/143495.htm