window下搭建rabbitmq环境(个人笔记)

1.下载与安装 erlang

由于RabbitMQ是基于erlang的,所以,在正式安装RabbitMQ之前,需要先安装一下erlang。

erlang与RabbitMQ版本的对应关系,如:RabbitMQ3.6.10,建议的erlang版本是19.3.x(安装前必看)

Erlang下载地址(各版本都可下载)

本人使用的版本:10.2

链接:https://pan.baidu.com/s/1ilcY4RgpW8KZY79i2g0_BQ
提取码:1q17

安装过程简单粗暴,以管理员身份运行,然后一直next即可

 
安装
 
完成
 
image.png

RabbitMQ下载与安装

RabbitMQ下载地址:

上面展示出的是本文撰写时,RabbitMQ的最新版本3.7.7

安装包:

链接:https://pan.baidu.com/s/1ilcY4RgpW8KZY79i2g0_BQ
提取码:1q17

安装过程

 
安装
 
完成

到此,RabbitMQ已经安装完毕了

 

打开浏览器,输入localhost:15672

 

到此,rabbitmq_management管理界面启动就完毕了,通过该管理界面,可以管理rabbitmq的队列,虚拟机,交换器等。

默认账户:guest
默认密码:guest

四、RabbitMQ配置

1)激活 RabbitMQ's Management Plugin

使用RabbitMQ 管理插件,可以更好的可视化方式查看Rabbit MQ 服务器实例的状态。

命令:"C:Program FilesRabbitMQ Server abbitmq_server-3.6.5sbin abbitmq-plugins.bat" enable rabbitmq_management

0-1688330126

安装完成后,需重启服务生效。

命令:net stop RabbitMQ && net start RabbitMQ

5-1045829506

2)创建用户,密码,绑定角色

使用rabbitmqctl控制台命令(位于C:Program FilesRabbitMQ Server abbitmq_server-3.6.5sbin>)来创建用户,密码,绑定权限等。

rabbitmq的用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。

查看现有用户及用户的角色:rabbitmqctl.bat list_users

1-1215172238

新增用户:rabbitmqctl.bat add_user username password

4-2126884817 7-1622765184

分配用户角色:rabbitmqctl.bat set_user_tags username administrator

79-871678508 3-1778819708

同一个用户可配置多个角色:rabbitmqctl.bat  set_user_tags  username tag1 tag2 ...

33-854688099

修改用户密码:rabbitmqctl change_password userName newPassword

2-1554343781

删除用户:rabbitmqctl.bat delete_user username

043-46515628

五、RabbitMQ管理控制台

默认访问地址:http://localhost:15672,使用用户名密码登陆系统

3-2113485448 5-1689389914

RabbitMQ管理控制台可查看所有的信息,包括增删改查用户、权限设置,都可以在这个页面完成,还可以依据业务需求设置策略(policy)

六、权限设置

按照官方文档,用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限。

我们配置权限会影响到exchange、queue的声明和删除。

读写权限影响到从queue里取消息、向exchange发送消息以及queue和exchange的绑定(binding)操作。

例如: 将queue绑定到某exchange上,需要具有queue的可写权限,以及exchange的可读权限;向exchange发送消息需要具有exchange的可写权限;从queue里取数据需要具有queue的可读权限。

设置用户权限:rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP  (例如: rabbitmqctl set_permissions -p / username ConfP WriteP ReadP赋值跟管理员一样的权限)

查看(指定hostpath)所有用户的权限信息:rabbitmqctl list_permissions [-p VHostPath]

查看指定用户的权限信息:rabbitmqctl list_user_permissions User

清除用户的权限信息:rabbitmqctl clear_permissions [-p VHostPath] User

七、知识点

1)RabbitMQ用户角色:

rabbitmq用户角色可分为五类:超级管理员, 监控者, 策略制定者, 普通管理者以及其他。

(1) 超级管理员(administrator)

可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。

(2) 监控者(monitoring)

可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

(3) 策略制定者(policymaker)

可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。

(4) 普通管理者(management)

仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。

(5) 其他的(自定义名称)

无法登陆管理控制台,通常就是普通的生产者和消费者。

八、遇到的问题:

  1.(reply-code=503, reply-text=COMMAND_INVALID - unknown exchange type 'x-delayed-message', class-id=40, method-id=10)

  现在安装包里面的Rabbit MQ 延迟插件  rabbitmq_delayed_message_exchange

  • cmd 进入 C:Program FilesRabbitMQ Server abbitmq_server-3.7.4sbin
  • 执行:rabbitmq-plugins enable rabbitmq_delayed_message_exchange
  • 重新启动rabbitmq
原文地址:https://www.cnblogs.com/youqc/p/13253807.html