🐰Windows环境安装RabbitMQ

消息队列

💡 Tips:RabbitMQ 2007 年发布,是使用 Erlang 语言开发的开源消息队列系统,基于 AMQP 协议来实现,消息队列目前主要 2 种模式,分别为"点对点模式"和"发布/订阅模式"。

点对点模式

一个具体的消息只能由一个消费者消费,多个生产者可以向同一个消息队列发送消息,但是一个消息在被一个消息者处理的时候,这个消息在队列上会被锁住或者被移除并且其他消费者无法处理该消息。

发布/订阅模式

单个消息可以被多个订阅者并发的获取和处理。一般来说,订阅有两种类型:

  • 临时(ephemeral)订阅:这种订阅只有在消费者启动并且运行的时候才存在。一旦消费者退出,相应的订阅以及尚未处理的消息就会丢失。
  • 持久(durable)订阅:这种订阅会一直存在,除非主动去删除。消费者退出后,消息系统会继续维护该订阅,并且后续消息可以被继续处理。

环境准备

💡 Tips:由于RabbitMQ基于Erlang语言开发所以需要先安装Erlang环境

安装RabbitMQ

💡 Tips:下载地址1:https://github.com/rabbitmq/rabbitmq-server/releases

下载地址2:https://www.rabbitmq.com/install-windows.html

设置Erlang环境变量(可选)

💡 Tips:如安装提示:Please either set ERLANG_HOME to point to your Erlang installation or place

需要设置环境变量

rabbitmq的server, sbin下: set ERLANG_HOME=Erlang安装目录

也可这样设置系统环境变量

系统变量Path设置

cmd 运行 erl输出版本号就可以了

安装rabbitmq-service

进入Rabbitmqa安装目录下的sbin目录输入cmd打开

输入 rabbitmq-service install 安装rabbitmq服务

💡 Tips:如安装提示:Please set ERLANG_SERVICE_MANAGER_PATH to the folder containing "erlsrv.exe".则先设置ERLANG_SERVICE_MANAGER_PATH环境变量再执行rabbitmq-service install

rabbitmq-service start 启动rabbitmq服务

安装RabbitMQ-Plugins

RabbitMQ-Plugins相当于是一个管理界面,方便我们在浏览器界面查看RabbitMQ各个消息队列以及exchange的工作情况
rabbitmq-plugins enable rabbitmq_management

成功后浏览器打开 http://localhost:15672 默认用户名密码:guest/guest 3.3.0版本以后该账号只能localhost登陆,不能通过IP地址访问 可通过添加新用户来解决

💡 Tips:TCP connection succeeded but Erlang distribution failed

原因:RabbitMQ的erlang.cookie和用户的cookie冲突了

解决:RabbitMQ Service 使用的 Cookie 是 C:\Windows\System32\config\systemprofile.erlang.cookie

用户使用的 Cookie 是

C:\Users\Administrator.erlang.cookie

把 RabbitMQ Service 的 Cookie 文件复制覆盖到用户的 Cookie

添加admin用户

rabbitmqctl add_user admin zeqp2023

设置用户标签为administrator
rabbitmqctl set_user_tags admin administrator

给用户admin赋予具可配置、可写及可读的权限
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

忘记用户密码操作

csharp 复制代码
//命令行进入rabbitmq安装目录下的sbin
//查看当前所有用户
rabbitmqctl list_users
//修改用户密码
rabbitmqctl change_password admin zeqp2023

开启** stomp **协议端口,暴露15674端口,用于前端使用stompjs进行订阅MQ

shell 复制代码
//命令行进入rabbitmq安装目录下的sbin
rabbitmq-plugins enable rabbitmq_web_stomp
rabbitmq-plugins enable rabbitmq_web_stomp_examples
相关推荐
huaqianzkh1 小时前
深入学习Topic Exchange交换机
中间件·系统架构·rabbitmq
xweiran9 小时前
RabbitMQ消费者重试的两种方案
java·rabbitmq·java-rabbitmq·重试·消息消费失败
huapiaoy11 小时前
RabbitMQ基本介绍及简单上手
java·rabbitmq·java-rabbitmq
恩爸编程12 小时前
RabbitMQ 在 Spring Boot 项目中的深度应用与实战解析
spring boot·rabbitmq·java-rabbitmq·rabbitmq使用·rabbitmq使用介绍·rabbitmq使用详细讲解·rabbitmq系统怎样使用
huaqianzkh14 小时前
深入学习RabbitMQ的Direct Exchange(直连交换机)
java·系统架构·rabbitmq
zhexiao2714 小时前
Springboot Rabbitmq + 线程池技术控制指定数量task执行
spring boot·rabbitmq·java-rabbitmq
FF在路上14 小时前
RabbitMQ-SpringAMQP使用介绍
分布式·rabbitmq
guihong0041 天前
消息队列:原理、问题与设计全解析
java·面试·rabbitmq
龙哥·三年风水2 天前
接口项目架构流程图-thinkphp6-rabbitmq
rabbitmq·php·流程图
sg_knight2 天前
RabbitMQ如何实现队列持久化
分布式·消息队列·rabbitmq·springcloud·持久化