温馨提示×

温馨提示×

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

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

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

发布时间:2022-03-11 17:03:34 来源:亿速云 阅读:243 作者:iii 栏目:开发技术
# 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版本调整路径和配置参数。生产环境建议使用最新稳定版本并做好安全加固。

向AI问一下细节

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

AI