1、RabbitMq简介

RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。 AMQP :Advanced Message Queue,高级消息队列协议。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。

2、队列(Queue)

队列是常用的数据结构之一,是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为对头。

3、消息队列(Message Queue)

消息:计算机/应用 间传送的数据单位,可以非常简单,例如只包含文本字符串,也可以很复杂,可能包含嵌入对象。 消息队列:在消息的传输过程中保存消息的容器

消息传输时,先发送到队列,队列的主要目的是提供路由并保证消息的传递,如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功的传递它。

可以把消息队列理解成快递公司,你需要寄一个物件(消息)给你的朋友,快递公司收到物件会保证物件送到你的朋友手中,可能存在多次寄送才送达成功的情况,比如第一次送过去,你朋友不在家

消息队列中间件是分布式系统中重要的组件 解决 应用耦合、异步消息、流量削锋 等问题 实现 高性能、高可用、可伸缩 和 最终一致性

4、下载

因为RabbitMQ是基于Erlang语言开发的,所以我们要先安装Erlang环境

这里通过官网下载需要的版本:https://www.rabbitmq.com/

进入官网向下拉,找到 Download + Installation 下载+安装,点击进入

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

进入页面后,下拉页面,找到 Dependencies 依赖关系,下载Erlang安装包和rabbitmq安装包:

RabbitMQ 和 Erlang/OTP 版本要兼容,官方版本介绍如下:https://www.rabbitmq.com/which-erlang.html

下载Erlang安装包页面,选择跟你操作系统对应的版本:

5、安装Erlang

下载完成后,先安装otp_win64_24.3.exe。鼠标右键以管理员方式运行,接着选取要安装的路径,然后一路傻瓜式安装 next 下一步,安装即可。注意不要安装在中文的路径下。(确保安装路径没有中文字符,并且不要有空字符)

安装otp_win64_24.3完成后,配置系统环境变量,右键此电脑 - 属性 - 高级系统设置 - 环境变量。找到系统变量path,把otp安装的bin路径C:\Program Files\erl-24.3\bin\添加上即可。

6、安装RabbitMQ

找到RabbitMQ安装文件,右键管理员运行,然后选择安装路径,接着一路 next 下一步即可。注意不要安装在中文路径下。

安装完成后找到安装文件路径,找到 sbin 目录下,打开命令行cmd,在命令行里切换到sbin目录下,输入如下命令:rabbitmq-plugins enable rabbitmq_management(下载可视化管理界面插件)

运行成功后,打开任务资源管理器,找到rabbitmq服务右键重新启动。或者也可以,双击sbin下的rabbitmq-server.bat(双击后稍等片刻)

安装完成后,通过浏览器访问RabbitMQ控制台http://localhost:15672 其中有几个默认值:

默认的端口号:5672

默认的用户是 guest guest

管理后台的默认端口号:15672

最上侧的导航以此是:概览、连接、信道、交换器、队列、用户管理

参考网址:https://zhuanlan.zhihu.com/p/515184963

如何完全卸载rabbitMQ

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

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

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

(4)打开Windows任务管理器。

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

(6)删除RabbitMQ和Erlang的所有安装目录。

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

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

(9)同样在User文件夹中,转到AppData Roaming RabbitMQ。删除RabbitMQ文件夹。

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

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

相关命令

查看端口占用情况

netstat -ano | findstr :15672

#下载插件

rabbitmq-plugins.bat enable rabbitmq_management

#查看是否安装成功

rabbitmqctl.bat status

#如果查看报错,可能是后台服务器没有开启,开启后台服务器再重试

net start RabbitMQ

#查看RabbitMQ已有用户以及用户对应的角色信息

rabbitmqctl.bat list_users

#RabbitMQ的默认用户名和密码是guest,只能在本机访问,新增一个用户,并赋予超级管理员角色

rabbitmqctl add_user 用户名 密码

#设置用户角色

rabbitmqctl set_user_tags 用户名 administrator

打开cmd 输入rabbitmqctl status

当cmd出现Status of node 'rabbit@机器名'[{pid,19692}, {running_applications,{[{rabbit,"RabbitMQ","3.16.14"... 等打印出来的消息时则安装成功

常见报错

1、安装rabbit的时候出现rabbitmq-service.bat start exited with code 1

解决办法:

打开注册表,搜索计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Ericsson\Erlang

删除该选项后,以管理员方式打开cmd或者terminal,在rabbitmq安装目录sbin下运行rabbitmq-service.bat install

2、运行rabbit后 解决办法:

在C:\Users\19457\AppData\Roaming\RabbitMQ\log下的日志中的报错信息显示: error:{case_clause,version_not_available}

rabbitMQ和erlang的版本不兼容,参考网址https://www.rabbitmq.com/which-erlang.html

查看原文