type
status
date
slug
summary
tags
category
icon
password
RabbitMQ 是一个免费的开源企业消息代理软件,使用 Erlang 编写,并实现了高级消息队列协议(AMQP)。它支持多种编程语言的客户端库、消息传递协议、消息队列、传送确认、灵活的路由到队列以及多种交换类型。此外,RabbitMQ 提供易于使用的 HTTP API、命令行工具和 Web UI 管理界面。在本教程中,我们将在 CentOS 7 服务器上安装 RabbitMQ。
一、依赖安装
1.1 更新 YUM
首先,更新系统软件包:
1.2 安装 Erlang
RabbitMQ 是用 Erlang 编写的,因此需要安装 Erlang。由于 Erlang 在默认的 YUM 存储库中不可用,我们需要先安装 EPEL 存储库:
1.3 检查 Erlang 版本
确认 Erlang 是否安装成功:
如果输出类似于以下内容,则安装成功:
您可以进入 Erlang shell:
1.4 安装 RabbitMQ
RabbitMQ 提供了预编译的 RPM 软件包。确保您已安装 Erlang,然后下载 RabbitMQ:
如果尚未安装 wget,请运行:
接下来,创建目录并下载 RabbitMQ:
导入 GPG 密钥:
安装 RabbitMQ:
至此,RabbitMQ 应已成功安装。
二、启动 RabbitMQ
启动 RabbitMQ 服务器进程:
要设置 RabbitMQ 在系统启动时自动启动,运行:
检查 RabbitMQ 服务器的状态:
如果启动成功,您将看到类似以下的输出:
要关闭 RabbitMQ 服务器:
三、防火墙和 SELinux 规则
如果启用了防火墙,请运行以下命令以允许 RabbitMQ 所需的端口:
如果启用了 SELinux,则需要运行以下命令以允许 RabbitMQ 服务:
四、访问 Web 控制台
启用 RabbitMQ Web 管理控制台:
设置 RabbitMQ 文件的所有权:
创建管理用户(请替换
[admin]
和 [password]
为自定义的用户名和密码):访问 RabbitMQ 管理面板:
在仪表板的“Admin”标签中,您可以管理用户、虚拟主机和策略。为安全起见,建议删除默认的访客用户:
在“Queues”选项卡中查看消息队列,您可以创建新队列或删除现有队列。在“Connections”选项卡中查看当前连接的列表。
五、设置远程访问到 RabbitMQ 服务
如果需要从远程连接 RabbitMQ 服务,您需要进行以下配置:
在配置文件中添加以下内容(请将
admin
替换为您希望使用的管理员账号):重新启动 RabbitMQ 服务:
现在,您可以通过 IP 地址和端口 5672 进行远程连接。
六、在 Node.js 中使用 RabbitMQ
对于 Node.js使用,RabbitMQ 的使用可以通过
amqplib
库来实现。以下是一个简单的示例,展示如何在 Node.js 中发送和接收消息。6.1 安装 amqplib
首先,确保您已安装 Node.js 和 npm。然后在项目目录中安装
amqplib
:6.2 发送消息
创建一个文件
send.js
,并添加以下代码:6.3 接收消息
创建另一个文件
receive.js
,并添加以下代码:6.4 运行示例
在终端中分别运行发送和接收脚本:
- 启动接收脚本:
- 在另一个终端中发送消息:
您应该看到接收脚本输出接收到的消息。
- 作者:HRope
- 链接:https://hrope.cn/article/install-rabbitmq
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。