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)

简单的发送与接收

B、工作模式(Work)

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

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

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

D、路由模式(Routing

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

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

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

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

F、死信队列

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

G、延时队列

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

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

二、Windows安装RabbitMQ

1、下载安装Erlang框架

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

2、设置环境变量

3、测试是否安装成功

运行CMD,输入erl

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

7、启动服务

rabbitmq-plugins enable rabbitmq_management

8、浏览地址

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

9、创建用户

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

A、添加用户

B、设置权限

10、常用命令

rabbitmqctl list_connections       ##查看当前连接

rabbitmqctl list_queues              ##列出所有队列

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

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

一、Windows部署RabbitMQ的更多相关文章

  1. RabbitMQ消息队列系列教程(二)Windows下安装和部署RabbitMQ

    摘要 本篇经验将和大家介绍Windows下安装和部署RabbitMQ消息队列服务器,希望对大家的工作和学习有所帮助! 目录 一.Erlang语言环境的搭建 二.RabbitMQ服务环境的搭建 三.Ra ...

  2. RabbitMQ系列(五)使用Docker部署RabbitMQ集群

    概述 本文重点介绍的Docker的使用,以及如何部署RabbitMQ集群,最基础的Docker安装,本文不做过多的描述,读者可以自行度娘. Windows10上Docker的安装 因为本人用的是Win ...

  3. Visual Studio GitHub For Windows部署

    使用GitHub For Windows部署Visual Studio项目 因为最近同时再看很多技术方面的书,书上的例子有很多自己想亲自尝试一下,但是每次写例子都得创建一个新项目未免太麻烦,索性就整理 ...

  4. prometheus + grafana部署RabbitMQ监控

    prometheus + grafana部署RabbitMQ监控 1.grafana导入dashboards https://grafana.com/dashboards/2121   2.expor ...

  5. Docker swarm结合Openresty部署rabbitmq集群

    Docker swarm结合Openresty部署rabbitmq集群 大家好,年底了,年味儿越来越浓了.2019年的寒冬被定义为未来10年中最好的一年,对于这一说法悲观的人和乐观的人的理解是不一样的 ...

  6. docker stack 部署 rabbitmq 容器

    =============================================== 2018/5/13_第1次修改                       ccb_warlock == ...

  7. Linux下安装部署RabbitMQ

    在写正文之前先啰嗦几句,RabbitMQ(消息队列)的安装让我费了半天劲啊!足足折腾了2天,最后写下这篇文章总结下,其实很简单,但是你找不到错在哪个环节就会费很多无用功,如果你也遇到了安装erl后 怎 ...

  8. Docker:安装部署RabbitMQ

    前言 今天原本想讲解SpringBoot集成RabbitMQ的,临近开始写时才发现家里的电脑根本没有安装RabbitMQ呀.这下只好利用已有的阿里云服务器,直接Docker安装一下了,顺道记录下,算是 ...

  9. windows安装rabbitMQ服务

    简介: RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是AMQP(高级消息队列协议)的标准实现. windows安装rabbitMQ服务步骤: 首先需要安装 Erl ...

随机推荐

  1. django setting.py配置文件解读-02

    定义项目目录常量 import os # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR ...

  2. vue 主次页面区分

    1.路由设定,增加meta参数 { path: '/', name: 'Home', component: Home, meta: { index: 0, showFooter: true //由这个 ...

  3. 鸿蒙内核源码分析(fork篇) | 一次调用,两次返回 | 百篇博客分析OpenHarmony源码 | v45.03

    百篇博客系列篇.本篇为: v45.xx 鸿蒙内核源码分析(Fork篇) | 一次调用,两次返回 | 51.c.h .o 进程管理相关篇为: v02.xx 鸿蒙内核源码分析(进程管理篇) | 谁在管理内 ...

  4. UDP用户数据报

    UDP 用户数据报协议UDP只在IP的数据报服务之上增加了很少的一个功能,就是复用,分用,差错检测功能.UDP的主要特点是: UDP是无连接的,即在发送数据报之前不需要建立连接(当然发送数据结束的时候 ...

  5. 踩坑系列《八》解决Win10没有找到Hyper-v的错误

    最近要安装docker,所以得开启Hyper属性面板,找了下,发现电脑上没有看到该属性. 在这之前,得先判断,你电脑是不是支持Hyper,打开cmd窗口,输入systeminfo 看看最下面Hyper ...

  6. 使用vxe table组件时,edit-render配置$select',选中option后关闭cell的激活状态,显示选中option的value问题

    在我的项目中使用vxe table组件时,edit-render配置{name: '$select', options: [{label:"脉搏",value:"maib ...

  7. Visual Studio Docker调试端口设置

    一.前言 在Visual Studio 调试程序时,Docker中的容器端口和主机端口映射随机生成,导致每次调试都需要修改前端API接口的地址 二.解决方案 1.修改Docker调试启动参数,找到启动 ...

  8. js 判断两个对象是否相等

    最近碰到的一个面试题,不算高频,记录一下 判断两个对象是否相等,大致分为三步 首先判断两个比较对象是不是 Object 如果都是对象 再比较 对象的长度是否相等 如果两个对象的长度相等 再比较对象属性 ...

  9. Tomcat各种日志的关系与catalina.out文件的分割

    Tomcat 各日志之间的关系 一图胜千言! 其他日志如localhost.{yyyy-MM-dd}.log.localhost-access.{yyyy-MM-dd}.log是context的名称, ...

  10. mybatis 操作数据库(05)

    类型转换.动态排序,查询接口与mapper对应关系说明及其注意事项 一.MyBatis 自带写常见类型转换器.例如:java 类中 String 对应 mySQL中的varchar 二.自定义类型转换 ...