Linux下如何安装ActiveMQ消息中间件

发布时间:2022-03-11 17:03:34 作者:iii
来源:亿速云 阅读:229
# Linux下如何安装ActiveMQ消息中间件

## 一、ActiveMQ简介

Apache ActiveMQ是一个开源的多协议消息中间件,支持JMS 1.1和J2EE 1.4规范。它具有以下核心特性:

- 支持多种协议(OpenWire, STOMP, AMQP, MQTT等)
- 提供持久化和非持久化消息传递
- 与Spring框架无缝集成
- 支持集群部署和高可用方案
- 提供消息分组、虚拟主题等高级特性

## 二、安装前准备

### 1. 系统要求
- Linux操作系统(本文以Ubuntu 20.04为例)
- Java环境(JDK 8或11)
- 至少1GB可用内存
- 2GB以上磁盘空间

### 2. 安装JDK
```bash
# Ubuntu/Debian
sudo apt update
sudo apt install openjdk-11-jdk

# 验证安装
java -version

3. 下载ActiveMQ

访问Apache ActiveMQ官网获取最新稳定版:

wget https://downloads.apache.org/activemq/5.16.3/apache-activemq-5.16.3-bin.tar.gz

三、安装步骤详解

1. 解压安装包

tar -xzvf apache-activemq-5.16.3-bin.tar.gz
sudo mv apache-activemq-5.16.3 /opt/activemq

2. 配置环境变量

编辑/etc/profile文件:

sudo nano /etc/profile

添加以下内容:

export ACTIVEMQ_HOME=/opt/activemq
export PATH=$PATH:$ACTIVEMQ_HOME/bin

使配置生效:

source /etc/profile

3. 修改配置文件

主要配置文件位于$ACTIVEMQ_HOME/conf目录:

activemq.xml(核心配置)

<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}">
    <!-- 修改传输协议配置 -->
    <transportConnectors>
        <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
    </transportConnectors>
</broker>

jetty.xml(Web控制台配置)

<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
    <property name="host" value="0.0.0.0"/>
    <property name="port" value="8161"/>
</bean>

4. 创建系统服务

创建服务文件/etc/systemd/system/activemq.service

[Unit]
Description=Apache ActiveMQ
After=network.target

[Service]
Type=forking
User=activemq
Group=activemq
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
Restart=on-abort

[Install]
WantedBy=multi-user.target

创建专用用户并设置权限:

sudo useradd -r activemq
sudo chown -R activemq:activemq /opt/activemq

启动服务:

sudo systemctl daemon-reload
sudo systemctl start activemq
sudo systemctl enable activemq

四、验证安装

1. 检查服务状态

systemctl status activemq

2. 访问Web控制台

浏览器访问:http://服务器IP:8161/admin
默认凭证:admin/admin

3. 端口验证

netstat -tulnp | grep java
# 应看到61616(OpenWire)和8161(Web)端口

五、基本使用

1. 启动/停止服务

# 手动启动
/opt/activemq/bin/activemq start

# 停止服务
/opt/activemq/bin/activemq stop

2. 创建测试队列

使用Web控制台: 1. 登录后进入”Queues”选项卡 2. 输入队列名称(如test.queue) 3. 点击”Create”按钮

3. 发送测试消息

// 使用JMS示例代码
ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");
Connection connection = factory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Queue queue = session.createQueue("test.queue");
MessageProducer producer = session.createProducer(queue);
TextMessage message = session.createTextMessage("Hello ActiveMQ!");
producer.send(message);

六、安全配置建议

1. 修改默认密码

编辑$ACTIVEMQ_HOME/conf/jetty-realm.properties

admin: NEW_PASSWORD, admin

2. 启用SSL加密

keytool -genkey -alias activemq -keyalg RSA \
  -keystore /opt/activemq/conf/broker.ks \
  -storepass password -keypass password

修改activemq.xml:

<sslContext>
    <sslContext keyStore="/opt/activemq/conf/broker.ks" 
                keyStorePassword="password"/>
</sslContext>

七、常见问题解决

1. 启动时报Java内存不足

修改$ACTIVEMQ_HOME/bin/env

ACTIVEMQ_OPTS="-Xms512M -Xmx1024M"

2. Web控制台无法访问

检查防火墙设置:

sudo ufw allow 8161/tcp

3. 消息堆积处理

调整策略配置:

<policyEntry queue=">" memoryLimit="32mb"/>

八、总结

本文详细介绍了在Linux系统上安装配置ActiveMQ的完整流程。通过合理的配置优化和安全加固,可以构建出稳定可靠的企业级消息中间件环境。建议生产环境中: - 使用JDK 11 LTS版本 - 配置主从集群实现高可用 - 定期监控消息堆积情况 - 做好数据备份策略

如需更高级功能,可参考官方文档进行深度配置。 “`

注:实际使用时请根据具体ActiveMQ版本调整路径和配置参数。生产环境建议使用最新稳定版本并做好安全加固。

推荐阅读:
  1. MacOS 安装 Activemq
  2. Linux下安装Redis及Linux下php安装Redis扩展

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux activemq

上一篇:戴尔电脑怎么重装系统

下一篇:windows重装系统文件丢失怎么恢复

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》