码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • RabbitMQ简介


    什么是RabbitMQ?

            RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而群集和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。

    什么是AMQP协议?

            AMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。Erlang中的实现有RabbitMQ等。

    RabbitMQ的架构

     RabbitMQ的工作模式 共六种

    WorkQueues

    与入门的简单模式相比多了一个或多个消费端

    对于任务重的或任务较多的情况可以提高处理速度,队列里1000条消息等待消费,c1和c2可均消费,不会出现重复消费。

    Pub/Sub订阅模式

     这里引入的新的角色X,就是我们所说的交换机,它可以绑定一个或者多个队列,而且可以选择分发模式​​​​​​

    • direct  直连交换机   可以选择性的分发
    • fanout  扇形交换机  分发给绑定的全部队列
    • topic    主题交换机   可以利用通配符匹配
    • headers  headers信息类型交换机,此类型交换机不通过routingkey路由键来分发消息,而是通过消息内容中的headers属性来进行匹配。headers类型交换器性能差,在实际中并不常用

     routing路由模式

            消息生产者将消息发送给交换机按照路由判断,路由是字符串(info) 当前产生的消息携带路由字符(对象的方法),交换机根据路由的key,只能匹配上路由key对应的消息队列,对应的消费者才能消费消息;

    topic 主题模式(路由模式的一种)

    1. 星号井号代表通配符

    2. 星号代表多个单词,井号代表一个单词

    3. 路由功能添加模糊匹配

    4. 消息产生者产生消息,把消息交给交换机

    5. 交换机根据key的规则模糊匹配到对应的队列,由队列的监听消费者接收消息消费

  • 相关阅读:
    乘风破浪,遇见最佳跨平台跨终端框架.Net Core/.Net生态 - 官方扩展集锦(Microsoft.Extensions on Nuget)
    Python中的循环与可迭代对象
    前端面试那些题
    PyTorch深度学习(30)OpenCV图像处理
    Oracle11g在红帽Linux上的安装教程
    基于Python+MySQL的书店销售管理管理子系统设计
    预告篇:利用现学知识实现一个shell
    影视解说短视频如何配音?三个文字转语音小技巧,配音其实也不难
    单例模式,适用于对象唯一的情景(设计模式与开发实践 P4)
    数据结构--排序(1)
  • 原文地址:https://blog.csdn.net/weixin_58473601/article/details/125412927
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号