(二)了解使用RabbitMQ

消息队列运行原理

在这里插入图片描述

  • 生产者:**生产消息,消息被放入消息队列 **
  • 消费者:** 一般为后台处理 **
  • RabbitMQ:** 管理消息队列,交换机的一个类似数据库的存在 **
  • 消息队列:** 存储消息,消息的存储是有交换机分发**
  • 交换机:** 消息进入交换机后,然后不同的模式有不同的分发规则**
  • 虚拟机:** 相当于一个地址,在这个地址内包括虚拟机,队列,以及它们之间的绑定**

创建一个用户

在这里插入图片描述

创建一个VHost

在这里插入图片描述

RabbitMQ命令

  • 开启服务:net start rabbitmq
  • 关闭服务:net stop rabbitmq
  • 不需要每次开机开启服务,服务一直处于开启状态的

RabbitMQ的几种模式

  • 没有使用交换机

    不指定交换机,消息直接发给指定的队列

  • 广播交换器(Fanout)
    在这里插入图片描述
    该模式下:交换机会把消息分发给所有的跟自己绑定的消息队列

  • 直接交换器(Dirct)
    在这里插入图片描述
    该模式下:消息会一个路由键,消息队列也带有自己的路由键,路由器之分发给匹配的消息队列

  • 主题交换器(Topic)
    在这里插入图片描述
    该模式下:路由键的设置可以多元化(good.add),进行匹配时可以带有#,*等 #代表匹配全部,*代表匹配一个。

绑定

交换机与队列进行绑定,可以一对一,一对多,多对多

队列

Queue是用来存储消息的容器,RabbitMQ提供了FIFO(先进先出)的机制,可以缓存消息也可以将消息持久化、临时或者自动删除

设置为持久化的队列,queue中的消息会在server本地硬盘存储一份,防止系统奔溃后数据丢失。

设置为临时队列,queue中的数据在系统重启之后就会丢失

设置为自动删除的队列,当不存在用户(生产者和消费者)连接到server,队列中的数据会被自动删除。

交换机

RabbitMQ中的交换机本身并不进行消息的存储,主要用做进行消息的转发到指定规则的队列内。
本身也可以进行持久化、临时、自动删除

消息

Message:由Header和Body组成,Header是由生产者添加的各种属性的集合,包括Message是否被持久化、由哪个Message Queue接受、优先级是多少等。而Body是真正需要传输的数据。

有什么错误求大家指出来,我也是菜鸟!!!大家一起成长

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值