开源消息代理软件 RabbitMQ

最受欢迎的开源消息代理,支持多种消息协议,可在分布式系统中可靠地传递消息

RabbitMQ 介绍

消息队列的领先解决方案

RabbitMQ 是一个开源的消息代理和队列服务器,用于在分布式系统之间共享数据。

RabbitMQ 是一个实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ 服务器是用 Erlang 语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。

RabbitMQ 最初是由金融系统开发,用于在分布式系统之间可靠地传递消息。它易于使用,可以在多种操作系统上运行,支持多种消息协议。RabbitMQ 可以部署在分布式和联合配置中,以满足高规模、高可用性的需求。

消息代理在应用程序之间传递消息,避免消息丢失或阻塞处理。RabbitMQ 提供了消息持久化、路由、负载均衡等功能,使其成为企业级应用程序的理想选择。它支持多种消息协议,包括 AMQP 0-9-1、STOMP、MQTT 等,并且可以通过插件扩展功能。

RabbitMQ 的核心概念包括生产者(发送消息)、消费者(接收消息)、队列(存储消息)和交换器(路由消息)。这种架构允许应用程序解耦,提高系统的可扩展性和可靠性。

在微服务架构中,RabbitMQ 常被用作服务之间的通信桥梁。它可以帮助解决服务之间的耦合问题,实现异步通信,提高系统的响应能力和容错能力。此外,RabbitMQ 还广泛应用于任务队列、事件驱动架构、日志收集等场景。

核心特点

RabbitMQ 的强大功能

了解 RabbitMQ 的关键特性,这些特性使其成为消息队列的首选解决方案

可靠性

RabbitMQ 提供了消息持久化、传输确认和发布确认等功能,确保消息不会丢失。

灵活的路由

通过交换机和绑定规则,消息可以灵活地路由到一个或多个队列,支持多种路由模式。

集群和高可用

RabbitMQ 可以部署为集群,队列可以在多个节点上镜像,提供高可用性和故障转移。

多协议支持

原生支持 AMQP 0-9-1,并通过插件支持 MQTT、STOMP、HTTP 等协议。

插件系统

丰富的插件生态系统,可以扩展 RabbitMQ 的功能,如管理界面、协议支持等。

安全性

提供身份验证、授权和 SSL/TLS 支持,确保消息传输的安全性。

安装要求

操作系统兼容性

RabbitMQ 支持多种操作系统,以下是各平台安装要求

操作系统 版本要求 Erlang 要求 备注
Windows
Windows 10/11, Server 2016+
Erlang 25.0+ 支持安装程序或 Docker 方式
macOS
macOS 10.14+
Erlang 24.0+ 推荐使用 Homebrew 安装
Ubuntu/Debian
Ubuntu 20.04+, Debian 10+
Erlang 25.0+ 提供官方APT仓库
RHEL/CentOS
RHEL/CentOS 7+
Erlang 25.0+ 提供官方YUM仓库
Docker
Docker 19.03+
已包含 官方提供Docker镜像

兼容性说明

平台与协议兼容性

RabbitMQ 具有出色的跨平台兼容性,可以在多种操作系统上运行,包括 Windows、Linux、macOS 等。其核心协议 AMQP 0-9-1 被广泛支持,几乎所有主流编程语言都有相应的客户端库。

通过官方插件,RabbitMQ 还支持其他消息协议:

  • MQTT - 适用于 IoT 设备
  • STOMP - 简单文本协议
  • HTTP - 通过 Web STOMP 和 Web MQTT
  • AMQP 1.0 - 企业级消息协议

RabbitMQ 可以与多种数据库和系统集成,包括 MySQL、PostgreSQL、Redis 等,也可以通过插件与 Kafka、Elasticsearch 等系统集成。

许可与费用

开源免费

Mozilla 公共许可证

RabbitMQ 采用 Mozilla 公共许可证 (MPL) 的开源许可模式,这意味着:

  • 完全免费使用,包括商业用途

  • 可自由修改源代码

  • 拥有活跃的社区支持

  • 提供商业支持选项

最新动态

RabbitMQ 新闻与更新

了解 RabbitMQ 的最新版本、功能更新和社区动态

2023-10-15

RabbitMQ 3.12 发布

最新版本带来多项性能改进,包括更快的队列实现、增强的流控制机制和优化的内存使用。

2023-09-22

新插件:RabbitMQ MQTT 5.0 支持

官方发布MQTT 5.0插件,为物联网应用提供更完善的消息协议支持,包括会话保持和消息过期功能。

2023-08-30

社区会议:RabbitMQ Summit 2023

年度RabbitMQ峰会将于11月在伦敦举行,届时将分享最佳实践、案例研究和未来路线图。

资源下载

获取 RabbitMQ

下载最新版本的 RabbitMQ 及相关工具

RabbitMQ 服务器

最新稳定版本:3.11.16 (2023年10月发布)

操作系统
下载链接
SHA256 校验
Windows Installer
rabbitmq-server-3.11.16.exe
8d8e7c...a9b3c2
Ubuntu/Debian Package
rabbitmq-server_3.11.16-1_all.deb
5f9c12...b4d7e1
RHEL/CentOS RPM
rabbitmq-server-3.11.16-1.el8.noarch.rpm
3a7b8d...f6c9a1
Generic Unix
rabbitmq-server-generic-unix-3.11.16.tar.xz
d2a4e5...9c8b3a