1. 首页 > 软件下载 > 正文

RabbitMQ消息队列下载-RabbitMQ最新版本下载地址-RabbitMQ下载方法

1. RabbitMQ消息队列简介

RabbitMQ是开源的消息代理软件,实现了高级消息队列协议(AMQP)。RabbitMQ以其可靠性、灵活路由和丰富的客户端支持著称,广泛用于分布式系统的消息传递、异步处理和解耦。更多学习教程www.fgedu.net.cn

RabbitMQ核心特点

可靠性:支持消息持久化、确认机制和事务

灵活路由:支持多种交换器类型实现灵活路由

集群支持:支持镜像队列和仲裁队列实现高可用

多协议支持:支持AMQP、MQTT、STOMP等协议

管理界面:提供功能丰富的Web管理控制台

2. RabbitMQ版本说明

RabbitMQ提供多个版本,用户可根据需求选择。学习交流加群风哥微信: itpux-com

最新版本信息

RabbitMQ 4.0.8:最新稳定版本

RabbitMQ 3.13.7:稳定版本,广泛使用

RabbitMQ 3.12.14:历史稳定版本

RabbitMQ 3.11.x:历史长期支持版本

版本特性

4.x版本:Khepri元数据存储,性能提升

3.13.x版本:仲裁队列增强,Classic Queue v2

3.12.x版本:Super Streams,MQTT 5.0支持

3. RabbitMQ下载地址

RabbitMQ可以从官方网站获取安装包。

官方下载地址

官方网站:https://www.rabbitmq.com/download

GitHub仓库:https://github.com/rabbitmq/rabbitmq-server/releases

文档中心:https://www.rabbitmq.com/docs

下载安装包

# 下载RabbitMQ 4.0.8 RPM包
# cd /fgeudb/software
# wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v4.0.8/rabbitmq-server-4.0.8-1.el7.noarch.rpm

# 输出示例如下:
–2026-04-04 10:00:00– https://github.com/rabbitmq/rabbitmq-server/releases/download/v4.0.8/rabbitmq-server-4.0.8-1.el7.noarch.rpm
Resolving github.com… 140.82.112.4
Connecting to github.com|140.82.112.4|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 20971520 (20M) [application/x-rpm]
Saving to: ‘rabbitmq-server-4.0.8-1.el7.noarch.rpm’

rabbitmq-server-4.0.8-1.el7.noarch.rpm 100%[===================>] 20.00M 15.5MB/s in 1.3s

2026-04-04 10:00:10 (15.5 MB/s) – ‘rabbitmq-server-4.0.8-1.el7.noarch.rpm’ saved

# 验证下载文件
# ls -lh rabbitmq-server-4.0.8-1.el7.noarch.rpm
-rw-r–r–. 1 root root 20M Apr 4 10:00 rabbitmq-server-4.0.8-1.el7.noarch.rpm

生产环境建议:建议使用RabbitMQ 4.0.x最新稳定版本进行生产部署。RabbitMQ需要Erlang运行环境,请确保版本兼容。from:www.itpux.com

4. 环境准备

在安装RabbitMQ之前,需要准备必要的系统环境和Erlang运行时。

系统要求

# 检查操作系统版本
# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.9 (Maipo)

# 检查系统架构
# uname -m
x86_64

# 检查内存和磁盘空间
# free -h
total used free shared buff/cache available
Mem: 31G 2.1G 28G 8.5M 1.0G 28G
Swap: 15G 0B 15G

# df -h /fgeudb
Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 500G 20G 480G 4% /fgeudb

# 安装Erlang(RabbitMQ 4.0需要Erlang 26+)
# yum install -y epel-release
# yum install -y erlang

# 验证Erlang版本
# erl -version

# 输出示例如下:
Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 14.2

# 或者使用RabbitMQ官方Erlang包
# curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
# yum install -y erlang

# 创建RabbitMQ用户和组
# groupadd -g 5015 rabbitmq
# useradd -g rabbitmq -u 5015 -d /var/lib/rabbitmq -s /sbin/nologin rabbitmq

# 创建数据目录
# mkdir -p /fgeudb/rabbitmq/{mnesia,log}
# chown -R rabbitmq:rabbitmq /fgeudb/rabbitmq

5. RPM包安装实战

使用RPM包安装是最简单的方式,以下是详细步骤。学习交流加群风哥QQ113257174

步骤1:安装RPM包

# 安装依赖包
# yum install -y socat logrotate

# 安装RabbitMQ
# rpm -ivh rabbitmq-server-4.0.8-1.el7.noarch.rpm

# 输出示例如下:
Preparing… ################################# [100%]
Updating / installing…
1:rabbitmq-server-4.0.8-1.0 ################################# [100%]

# 查看安装目录
# ls -la /usr/lib/rabbitmq/
total 16
drwxr-xr-x. 4 root root 4096 Apr 4 10:05 .
drwxr-xr-x. 3 root root 4096 Apr 4 10:00 ..
drwxr-xr-x. 2 root root 4096 Apr 4 10:05 bin
drwxr-xr-x. 3 root root 4096 Apr 4 10:05 lib

# 查看配置目录
# ls -la /etc/rabbitmq/
total 8
drwxr-xr-x. 2 root root 4096 Apr 4 10:05 .
drwxr-xr-x. 3 root root 4096 Apr 4 10:00 ..

步骤2:配置RabbitMQ

# 创建配置文件
# vi /etc/rabbitmq/rabbitmq.conf

# 基础配置
listeners.tcp.default = 5672
management.tcp.port = 15672

# 数据目录配置
default_user = admin
default_pass = YourPassword123!

# 内存配置
vm_memory_high_watermark.relative = 0.6
vm_memory_high_watermark_paging_ratio = 0.75

# 磁盘配置
disk_free_limit.relative = 1.5

# 日志配置
log.file.level = info
log.console = true

# 保存配置文件

# 创建环境变量配置
# vi /etc/rabbitmq/rabbitmq-env.conf

RABBITMQ_MNESIA_BASE=/fgeudb/rabbitmq/mnesia
RABBITMQ_LOG_BASE=/fgeudb/rabbitmq/log
RABBITMQ_NODE_IP_ADDRESS=0.0.0.0
RABBITMQ_NODE_PORT=5672

# 保存配置文件

风哥提示:vm_memory_high_watermark.relative设置为0.6,当内存使用达到60%时触发流控。disk_free_limit.relative设置为1.5,当磁盘空间低于内存1.5倍时阻止写入。

步骤3:启动RabbitMQ

# 启用管理插件
# rabbitmq-plugins enable rabbitmq_management

# 输出示例如下:
Enabling plugins on node rabbit@fgedu:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@fgedu…
Plugin configuration has changed. Restart RabbitMQ for changes to take effect.

# 启动RabbitMQ服务
# systemctl start rabbitmq-server

# 设置开机自启
# systemctl enable rabbitmq-server

# 输出示例如下:
Created symlink from /etc/systemd/system/multi-user.target.wants/rabbitmq-server.service to /usr/lib/systemd/system/rabbitmq-server.service.

# 检查服务状态
# systemctl status rabbitmq-server

● rabbitmq-server.service – RabbitMQ broker
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled)
Active: active (running) since Fri 2026-04-04 10:15:00 CST; 10s ago
Main PID: 12345 (beam.smp)
CGroup: /system.slice/rabbitmq-server.service
├─12345 /usr/lib64/erlang/erts-14.2/bin/beam.smp …
├─12346 erl_child_setup 32768
└─12347 inet_gethost 4

# 检查端口
# netstat -tlnp | grep beam
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 12345/beam.smp
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 12345/beam.smp
tcp 0 0 0.0.0.0:5672 0.0.0.0:* LISTEN 12345/beam.smp

6. Docker容器安装实战

使用Docker容器安装RabbitMQ是最快捷的方式,适合快速测试和开发环境。更多学习教程公众号风哥教程itpux_com

步骤1:拉取RabbitMQ镜像

# 拉取官方RabbitMQ镜像(包含管理插件)
# docker pull rabbitmq:4.0.8-management

# 输出示例如下:
4.0.8-management: Pulling from library/rabbitmq
f1f26f570256: Pull complete
8f8e43ef9c3a: Pull complete
e9d8dca5b8a5: Pull complete
a1b8d4c4a5e6: Pull complete
Digest: sha256:abc123def456…
Status: Downloaded newer image for rabbitmq:4.0.8-management
docker.io/library/rabbitmq:4.0.8-management

# 查看镜像
# docker images | grep rabbitmq
rabbitmq 4.0.8-management abc123def456 2 weeks ago 250MB

步骤2:运行RabbitMQ容器

# 创建数据目录
# mkdir -p /fgeudb/rabbitmq/{data,logs}

# 运行RabbitMQ容器
# docker run -d \
–name rabbitmq \
–hostname rabbitmq \
-p 5672:5672 \
-p 15672:15672 \
-p 25672:25672 \
-v /fgeudb/rabbitmq/data:/var/lib/rabbitmq/mnesia \
-v /fgeudb/rabbitmq/logs:/var/log/rabbitmq \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=YourPassword123! \
-e RABBITMQ_VM_MEMORY_HIGH_WATERMARK=0.6 \
rabbitmq:4.0.8-management

# 输出示例如下:
abc123def456789…

# 检查容器状态
# docker ps | grep rabbitmq
abc123def456 rabbitmq:4.0.8-management “docker-entrypoint.s…” 10 seconds ago Up 9 seconds 0.0.0.0:15672->15672/tcp, 0.0.0.0:25672->25672/tcp, 0.0.0.0:5672->5672/tcp rabbitmq

# 查看容器日志
# docker logs rabbitmq

# 输出示例如下:
Server startup complete; 4 plugins started.
* rabbitmq_management
* rabbitmq_management_agent
* rabbitmq_web_dispatch
* rabbitmq_prometheus
Completed with 4 plugins.

7. RabbitMQ配置优化

以下是生产环境的RabbitMQ配置优化建议。

性能配置优化

# 编辑配置文件
# vi /etc/rabbitmq/rabbitmq.conf

# 基础配置
listeners.tcp.default = 5672
management.tcp.port = 15672

# 连接配置
connection_max = 10000
channel_max = 2048

# 内存配置
vm_memory_high_watermark.relative = 0.6
vm_memory_high_watermark_paging_ratio = 0.75

# 磁盘配置
disk_free_limit.relative = 2.0

# 队列配置
queue_master_locator = min-masters

# 消息配置
consumer_timeout = 1800000

# 集群配置
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
cluster_formation.classic_config.nodes.1 = rabbit@node1
cluster_formation.classic_config.nodes.2 = rabbit@node2
cluster_formation.classic_config.nodes.3 = rabbit@node3

# 镜像队列配置(高可用)
ha_policy = ha-all
ha-sync-mode = automatic

# 保存配置文件

高级配置

# 创建高级配置文件
# vi /etc/rabbitmq/advanced.config

[
{rabbit, [
{msg_store_file_size_limit, 16777216},
{queue_index_max_journal_entries, 65536},
{default_consumer_prefetch, [{credit, 256}]},
{collect_statistics, coarse},
{collect_statistics_interval, 30000}
]},
{kernel, [
{inet_dist_listen_min, 25672},
{inet_dist_listen_max, 25672}
]}
].

# 保存配置文件

# 配置文件描述符限制
# vi /etc/security/limits.d/rabbitmq.conf

rabbitmq soft nofile 65535
rabbitmq hard nofile 65535

生产环境建议:connection_max根据并发需求设置。vm_memory_high_watermark.relative设置为0.6-0.7。建议配置集群和镜像队列实现高可用。启用Prometheus插件进行监控。

8. 安装验证与测试

安装完成后,需要进行验证测试确保RabbitMQ正常运行。

访问Web管理控制台

# 浏览器访问Web管理控制台
# URL: http://192.168.1.51:15672/

# 登录信息
# 用户名: admin
# 密码: YourPassword123!

# RabbitMQ管理控制台功能:
# – 概览:显示队列、连接、通道统计
# – 连接:查看和管理客户端连接
# – 通道:查看和管理通道
# – 交换器:创建和管理交换器
# – 队列:创建和管理队列
# – 用户:管理用户和权限
# – 策略:配置队列和交换器策略

使用rabbitmqctl命令行工具

# 查看服务器状态
# rabbitmqctl status

# 输出示例如下:
Status of node rabbit@fgedu …
[{pid,12345},
{running_applications,
[{rabbit,”RabbitMQ”,”4.0.8″},
{rabbitmq_management,”RabbitMQ Management”,”4.0.8″},
{rabbitmq_management_agent,”RabbitMQ Management Agent”,”4.0.8″},
{os_mon,”CPO CXC 138 46″,”2.8.1″},
{mnesia,”MNESIA CXC 138 12″,”4.21.4″},
{xmerl,”XML parser”,”2.1″},
{rabbitmq_web_dispatch,”RabbitMQ Web Dispatcher”,”4.0.8″},
{cowboy,”Small, fast, modern HTTP server.”,”2.13.0″},
{cowlib,”Support library for manipulating Web protocols.”,”2.14.0″},
{ranch,”Socket acceptor pool for TCP protocols.”,”2.2.0″}]},
{os,{unix,linux}},
{erlang_version,”14.2″},
{memory,
[{total,104857600},
{connection_readers,1048576},
{connection_writers,2097152},
{connection_channels,1048576},
{connection_other,2097152},
{queue_procs,10485760},
{queue_slave_procs,0},
{plugins,20971520},
{other_proc,20971520},
{metrics,10485760},
{mgmt_db,20971520},
{mnesia,10485760},
{other_ets,10485760},
{binary,10485760},
{msg_index,1048576},
{code,20971520},
{atom,1048576},
{other_system,10485760}]},
{vm_memory_high_watermark,0.6},
{vm_memory_limit,12884901888},
{disk_free_limit,21474836480},
{disk_free,429496729600},
{file_descriptors,
[{total_limit,65535},
{total_used,10},
{sockets_limit,58983},
{sockets_used,5}]},
{processes,[{limit,1048576},{used,256}]},
{run_queue,0},
{uptime,3600}]

# 查看集群状态
# rabbitmqctl cluster_status

# 输出示例如下:
Cluster status of node rabbit@fgedu …
Basics
Cluster name: rabbit@fgedu
Disk Nodes
rabbit@fgedu
Running Nodes
rabbit@fgedu
Versions
rabbit@fgedu: RabbitMQ 4.0.8 on Erlang 14.2

# 查看用户列表
# rabbitmqctl list_users

# 输出示例如下:
Listing users …
user tags
admin [administrator]

# 查看队列列表
# rabbitmqctl list_queues name messages consumers

# 输出示例如下:
Timeout: 60.0 seconds …
Listing queues for vhost / …

创建测试队列和消息

# 创建测试用户
# rabbitmqctl add_user testuser TestPassword123!
# rabbitmqctl set_permissions -p / testuser “.*” “.*” “.*”

# 输出示例如下:
Adding user “testuser” …
Setting permissions for user “testuser” in vhost “/”

# 使用rabbitmqadmin创建队列
# rabbitmqadmin -u admin -p YourPassword123! declare queue name=test_queue durable=true

# 输出示例如下:
queue declared

# 发布测试消息
# rabbitmqadmin -u admin -p YourPassword123! publish routing_key=test_queue payload=”Hello RabbitMQ!”

# 输出示例如下:
Message published

# 查看队列消息
# rabbitmqadmin -u admin -p YourPassword123! get queue=test_queue

# 输出示例如下:
+————-+———-+—————+——————+—————+——————+————+————-+
| routing_key | exchange | message_count | payload | payload_bytes | payload_encoding | properties | redelivered |
+————-+———-+—————+——————+—————+——————+————+————-+
| test_queue | | 0 | Hello RabbitMQ! | 15 | string | | False |
+————-+———-+—————+——————+—————+——————+————+————-+

REST API测试

# 使用curl测试REST API
$ curl -u admin:YourPassword123! http://192.168.1.51:15672/api/overview

# 输出示例如下:
{
“rabbitmq_version”: “4.0.8”,
“cluster_name”: “rabbit@fgedu”,
“erlang_version”: “14.2”,
“erlang_full_version”: “Erlang/OTP 26 [erts-14.2]”,
“message_stats”: {
“publish”: 1,
“publish_details”: {
“rate”: 0.0
}
},
“queue_totals”: {
“messages”: 0,
“messages_ready”: 0,
“messages_unacked”: 0
},
“object_totals”: {
“consumers”: 0,
“queues”: 1,
“exchanges”: 8,
“connections”: 0,
“channels”: 0
},
“statistics_db_event_queue”: 0,
“statistics_db_node”: “rabbit@fgedu”,
“node”: “rabbit@fgedu”,
“listeners”: [
{
“node”: “rabbit@fgedu”,
“protocol”: “amqp”,
“ip_address”: “0.0.0.0”,
“port”: 5672
},
{
“node”: “rabbit@fgedu”,
“protocol”: “clustering”,
“ip_address”: “::”,
“port”: 25672
},
{
“node”: “rabbit@fgedu”,
“protocol”: “http”,
“ip_address”: “0.0.0.0”,
“port”: 15672
}
]
}

# 查看队列列表
$ curl -u admin:YourPassword123! http://192.168.1.51:15672/api/queues

# 输出示例如下:
[
{
“name”: “test_queue”,
“messages”: 0,
“messages_ready”: 0,
“messages_unacked”: 0,
“consumers”: 0,
“durable”: true,
“auto_delete”: false
}
]

生产环境建议:建议配置集群模式实现高可用。启用镜像队列或仲裁队列。定期备份消息和配置。监控关键指标如队列深度、消息速率、内存使用率。

至此,RabbitMQ消息队列的下载和安装已完成。后续可以根据实际业务需求创建队列、交换器和配置集群。

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息