RabbitMQ安装配置
RabbitMQ安装
引言
RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。
MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。RabbitMQ可以,多个程序同时使用RabbitMQ ,但是必须队列名称不一样。采用erlang语言,属于爱立信公司开发的。
环境
1. 系统: ContOS7
2. Erlang: V 20.2
3. RabbitMQ: V 3.5.0(版本未在生产环境使用)
4. Python: Python 2.7.11
安装依赖包
安装所需的依赖,一般都是一些常用的,没有遇到其它棘手的问题,很顺利(祝你成功)
1 2 3 4 5 6 | # yum install build-essential m4 # yum install openssl # yum install openssl-devel # yum install unixODBC # yum install unixODBC-devel # yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel |
安装Erlang
由于RabbitMQ是有erlang语言开发的,erlang必然是不可或缺的!
下载
1 2 3 4 | # wget http://www.erlang.org/download/otp_src_R15B01.tar.gz or # 官网自行下载版本 # http://www.erlang.org/ |
安装
1 2 3 4 5 6 7 8 9 | # 解压 tar - zxvf otp_src_20. 2.tar .gz cd otp_src_20. 2 # 编译安装 . / configure - - prefix = / opt / rabbitmq make make install # 添加环境变量<br> |
如编译时报以下错误(请重新安装依赖包)
1 | 尝试解决错误: # yum install ncurses-devel |
1 2 3 | 尝试解决: # yum install unixODBC # yum install unixODBC-devel |
验证erlang
如下图所示,即为安装成功
安装rabbitmq
当前rabbitmq版本已经更新到了3.7.n版本,但我尝试安装的版本偏低,3.5.n版本,如有特殊需求请自行解决!
下载
1 | # wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.0/rabbitmq-server-3.5.0-1.noarch.rpm |
安装
通过yum安装,会帮助你解决很多依赖问题!
1 | # yum install rabbitmq-server-3.5.0-1.noarch.rpm |
坐等安装完成后,大功告成!
验证
尝试启动rabbitmq
1 | # rabbitmq-server -detached (加-detached参数,为后台运行) |
如下图所示:即为成功
哈哈哈,全部搞定,开启RabbitMQ之旅吧!
起停服务
1 2 3 4 5 6 7 8 9 | # 启用web管理界面 # rabbitmq-plugins enable rabbitmq_management # 开启服务:rabbitmq-server -detached # 关闭服务:rabbitmqctl stop (连同节点上的其它应用程序一同关闭了) # or # 关闭服务:rabbitmqctl stop_app (只关闭rabbitmq节点) # 开启插件:rabbitmq-plugins enable 插件名 # 关闭插件:rabbitmq-plugins disable 插件名 # 检查rabbitmq状态:rabbitmqctl status |
默认端口
1 2 3 4 5 6 7 8 9 | 4369 (epmd), 25672 (Erlang distribution) 5672 , 5671 (AMQP 0 - 9 - 1 without and with TLS) 15672 ( if management plugin is enabled) 61613 , 61614 ( if STOMP is enabled) 1883 , 8883 ( if MQTT is enabled) # 特殊说明 web: 15672 api_port: 5672 |
配置文件和日志
1 2 | # 默认情况下rabbitmq的日志在 /var/log/rabbitmq/rabbit@[hostname].log # 默认配置文件 /etc/rabbitmq/rabbitmq.config |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性