admin 管理员组

文章数量: 887021

一、RabbitMQ是什么?

  RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。 ​ AMQP :Advanced Message Queue,高级消息队列协议。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。 ​ RabbitMQ 最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

具体特点包括:

1.可靠性(Reliability) ​ RabbitMQ 使用一些机制来保证可靠性,如持久化、传输确认、发布确认。

2.灵活的路由(Flexible Routing) ​ 在消息进入队列之前,通过 Exchange 来路由消息的。对于典型的路由功能,RabbitMQ已经提供了一些内置的 Exchange 来实现。针对更复杂的路由功能,可以将多个Exchange 绑定在一起,也通过插件机制实现自己的 Exchange 。

3.消息集群(Clustering) ​ 多个 RabbitMQ 服务器可以组成一个集群,形成一个逻辑 Broker

4.高可用(Highly Available Queues) ​ 队列可以在集群中的机器上进行镜像,使得在部分节点出问题的情况下队列仍然可用。

5.多种协议(Multi-protocol) ​ RabbitMQ 支持多种消息队列协议,比如 STOMP、MQTT 等等。

6.多语言客户端(Many Clients) ​ RabbitMQ 几乎支持所有常用语言,比如 Java、.NET、Ruby 等等。

7.管理界面(Management UI) ​ RabbitMQ 提供了一个易用的用户界面,使得用户可以监控和管理消息 Broker 的许多方面。

8.跟踪机制(Tracing) ​ 如果消息异常,RabbitMQ 提供了消息跟踪机制,使用者可以找出发生了什么。

9.插件机制(Plugin System) ​ RabbitMQ 提供了许多插件,来从多方面进行扩展,也可以编写自己的插件。

二、安装步骤

1.安装准备工作

这里通过官网下载需要的版本:RabbitMQ官方网址

进入官网点击get started,找到 Download + Installation 下载+安装,点击进入。

在新页面找到右侧,Install Windows 安装windows版本

然后页面下拉,找到 Dependencies 依赖关系

选择otp_win64_24.1.7.exe 我的系统是64位的,所以下载win64

这里笔者强调一下。我安装的是最新版本。如果你们觉得最新版可能存在未知bug或不兼容问题,可以选择自己想要下载的对应版本即可。

2.开始安装

第一步:找到我们下载的软件位置。

第二步:先安装otp_win64_24.1.7.exe

第三步:鼠标右键以管理员方式运行

第四步:接着选取要安装的路径,然后一路傻瓜式安装 next 下一步,安装即可。

【注意】不要安装在中文或带空格的文件路径下

第五步:配置系统环境变量

右键此电脑 - 属性 - 高级系统设置 - 环境变量

接着打开 - 此电脑(文件资源管理器) 找到刚刚我们安装的 erl - 24.1.7 文件 bin 目录下,复制路径 ctrl+c

切换窗口到环境变量,找到系统变量 path - 编辑

新建 - ctrl + v 粘贴刚才我们复制的路径,然后三次确定,关闭环境变量窗口

第六步:安装 RabbitMQ

右键管理员运行,然后选择安装路径,接着一路 next 下一步,遇到弹窗点允许,没有弹窗则无视。

【注意】不要安装在中文或带空格的文件路径下

第七步:安装完成后找到安装文件路径,找到 sbin 目录下,全选路径 输入 cmd

打开cmd命令窗口。运行下面命令,回车运行。

rabbitmq-plugins enable rabbitmq_management

第八步:打开任务资源管理器。win11 快捷键 Ctrl+Shift+Esc,找到rabbitmq服务右键重新启动。

3.结束安装

打开浏览器。访问 http://127.0.0.1:15672

出现管理页面:

账号:guest

密码:guest

登录成功后。进入下面页面即代表安装成功。至此大功告成。是不是很简单!

注意事项

  1. erlang的版本必须与rabbit相匹配,如果不匹配,会各种不知名错误

  1. 安装RabbitMQ和Erlang的目录一定不能有空格和中文字符。

  1. 如果启动之后还是无法打开管理页面按照以下操作试试:

①切换至RebbitMQ安装目录下的sbin

②执行rabbitmq-service.bat remove命令

③环境变量配置添加RabbitMQ_BASE=自己电脑安装RabbitMQ下data全路径,比如我的路径是:D:\Rabbitmq3.8.19\data

④执行rabbitmq-service.bat install

⑤执行rabbitmq-plugins enable rabbitmq_management

⑥重启rabbit服务

  1. 要从计算机中完全卸载RabbitMQ和Erlang,请执行以下操作:

①停掉rabbit服务

②打开Windows控制面板,双击“程序和功能”。

③在当前安装的程序列表中,右键单击RabbitMQ Server,然后单击“卸载”。

④在当前安装的程序列表中,右键单击“Erlang OTP”,然后单击“卸载”。

⑤打开Windows任务管理器。

⑥在任务管理器中,查找进程epmd.exe。 如果此进程仍在运行,请右键单击该进程,然后单击“结束进程”。

⑦删除RabbitMQ和Erlang的所有安装目录。

⑧删除文件C:\ Windows \ .erlang.cookie(如果存在)。

⑨转到用户文件夹:C:\ Users \ [username],然后删除文件.erlang.cookie。删除

⑩同样在User文件夹中,转到AppData \ Roaming \ RabbitMQ。删除RabbitMQ文件夹。

(11)打开运行cmd->sc delete RabbitMQ。

(12)打开运行->regedit 找到RabbitMQ节点,删掉即可。

  1. 如果要使用rabbit的延时队列,还需要另外下载rabbit的延时队列插件

①下载插件

https://github/rabbitmq/rabbitmq-delayed-message-exchange/releases

②复制插件至rabbitmq安装目录下的plugins目录

启用插件,切换至sbin目录下,执行以下命令

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

重启服务,然后去管理端新增交换机时可以看到这个类型说明启用成功

  1. 如果启动项目报错(Broker not available; cannot force queue declarations during start: java.io.IOException):这是端口不对,检查自己项目中端口是否正确:15672是web管理端的端口号,项目中应该使用5672

本文标签: 教程 详细 Windows RabbitMQ