一、Windows部署RabbitMQ

RabbitMQ官方网站非常详细,以下只是本人学习过程的整理

 

一、Windows部署RabbitMQ:https://www.cnblogs.com/yangleiyu/p/15539618.html
二、Linux部署RabbitMQ集群:https://www.cnblogs.com/yangleiyu/p/15539698.html
三、.Net Core使用RabbitMQ各种模式:会在后续文章介绍

 

一、概述

1、RabbitMQ的概念

RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)

RabbitMQ服务器是用Erlang语言编写的,Erlang是专门为高并发而生的语言,而集群和故障转移是构建在开发电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库

RabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器

2、RabbitMQ的好处

开源,安全,可靠性高,数据能够保证百分之百的不丢失等等

3、RabbitMq的使用场景

3.1什么时候使用MQ?

1)数据驱动的任务依赖

2)上游不关心多下游执行结果

3)异步返回执行时间长

3.2什么时候不使用MQ?

需要实时关注执行结果 (同步调用)

4、RabbitMQ的几种工作模式

A、简单模式(Simple)

简单的发送与接收

 一、Windows部署RabbitMQ_第1张图片

B、工作模式(Work)

单发送多接收,一个生产者端,多个消费者端

 一、Windows部署RabbitMQ_第2张图片

C、发布订阅模式(Publish/Subscribe

生产者端发送消息,多个消费者同时接收所有的消息

 一、Windows部署RabbitMQ_第3张图片

D、路由模式(Routing

生产者按routing key发送消息,不同的消费者端按不同的routing key接收消息

 一、Windows部署RabbitMQ_第4张图片

E、通配符(或主题)模式(Topics ,按topic发送接收)

生产者端不只按固定的routing key发送消息,而是按字符串“匹配”发送,消费者端同样如此。

符号“#”匹配一个或多个词,符号“*”仅匹配一个词。

 一、Windows部署RabbitMQ_第5张图片

F、死信队列

 一、Windows部署RabbitMQ_第6张图片

P发送消息经X1路由到Q1,Q1的消息触发特定情况,自动把消息经X2路由到Q2,C直接消息Q2的消息。

G、延时队列

 一、Windows部署RabbitMQ_第7张图片

延时队列其实也是配合死信队列一起用。给队列添加消息过时时间(TTL),变成延时队列。

延时队列还可以设置不同的过期时间。

二、Windows安装RabbitMQ

1、下载安装Erlang框架

链接:https://pan.baidu.com/s/1c3SVYLrryojrZ8Pe4W0UOw
提取码:0716

2、设置环境变量

 一、Windows部署RabbitMQ_第8张图片

3、测试是否安装成功

运行CMD,输入erl

 一、Windows部署RabbitMQ_第9张图片

4、下载并安装rabbitmq-server

链接:https://pan.baidu.com/s/1zcHIIKTjjIlCNytxQnSn_A
提取码:0716

5、切换目录

cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.16\sbin

 

6、查看状态

rabbitmqctl status

 一、Windows部署RabbitMQ_第10张图片

7、启动服务

rabbitmq-plugins enable rabbitmq_management

 一、Windows部署RabbitMQ_第11张图片

8、浏览地址

http://127.0.0.1:15672/,进入管理页面,账户密码都是guest

 一、Windows部署RabbitMQ_第12张图片

 

 一、Windows部署RabbitMQ_第13张图片

9、创建用户

guest账号默认是不支持远程连接的,一般服务都不是在本地,所以需要创建用户。

A、添加用户

 一、Windows部署RabbitMQ_第14张图片

B、设置权限

 一、Windows部署RabbitMQ_第15张图片

一、Windows部署RabbitMQ_第16张图片

10、常用命令

rabbitmqctl list_connections       ##查看当前连接

rabbitmqctl list_queues              ##列出所有队列

rabbitmqctl status                       ##查看当前队列信息

命令设置权限: rabbitmqctl set_permissions -p "/" kiba "." "." ".*"

你可能感兴趣的:(一、Windows部署RabbitMQ)