• 资深大牛纯手写RabbitMQ 核心笔记,还有谁?


    RabbitMQ简介

    RabbitMQ是消息代理(Message Broker),它支持多种异步消息处理方式,最常见的有:

    • Work Queue:将消息缓存到一个队列,默认情况下,多个worker按照Round Robin的方式处理队列中的消息。每个消息只会分配给单个worker。
    • Publish/Subscribe:每个订阅消息的消费者都会收到消息,因此每个消息通常会分配给多个worker,每个worker对消息进行不同的处理。

    RabbitMQ还支持Routing、Topics、以及Remote procedure calls (RPC)等方式。

    对于不同的消息处理方式,有一点是相同的,RabbitMQ是介于消息的生产者和消费者的中间节点,负责缓存和分发消息。RabbitMQ接收来自生产者的消息,缓存到内存中,按照不同的方式分发给消费者。RabbitMQ还可以将消息写入磁盘,保证持久化,这样即使RabbitMQ意外崩溃了,消息数据不至于完全丢失。

    为什么使用RabbitMQ?

    最简单的一点在于,它支持Work Queue等不同的消息处理方式,可以用于不同的业务场景。对于我们Fundebug来说,目前只用过RabbitMQ的Work Queue,即消息队列

    使用消息队列,可以将不算紧急、但是非常消耗资源的计算任务,以消息的方式插入到RabbitMQ的队列中,然后使用多个处理模块处理这些消息。

    这样做最大的好处在于:提高了系统峰值处理能力。因为,来不及处理的消息缓存在RabbitMQ中,避免了同时进行大量计算导致系统因超负荷运行而崩溃。而那些来不及处理的消息,会在峰值过去之后慢慢处理掉。

    另一个好处在于解耦。消息的生产者只需要将消息发送给RabbitMQ,这些消息什么时候处理完,不会影响生产者的响应性能。

    如果你在RabbitMQ消息中间件方面理解的不透彻,应对面试官的提问有些发怵。这里小编分享的RabbitMQ核心笔记一定不能错过,图文并茂,非常适合有需要学习RabbitMQ消息中间件的朋友!

    总目录

    1. 消息中间件概述

    2. 安装及配置 RabbitMQ

    3. RabbitMQ 入门

    4. AMQP

    5. RabbitMQ 工作模式

    6.Spring t Boot 整合 RabbitMQ

    7. RabbitMQ 高级

    8. RabbitMQ 集群

    9. RabbitMQ 高可用集群【扩展】

    10. RabbitMQ 应用与面试

    核心笔记结构图:

  • 相关阅读:
    【Mysql】 InnoDB引擎 - 介绍
    基于docker搭建apache和mariadb服务器,实现一个dz页面完美访问
    c++ 智能指针 (std::weak_ptr)(二)
    mysql事务
    k8s集群 ceph rbd 存储动态扩容
    第六章:存储系统
    Raspberry Pi 4B树莓派学习笔记
    [iOS开发]渲染相关问题
    高等数学刷题
    【Android 屏幕适配】屏幕适配通用解决方案 ② ( 自定义组件解决方案 | 需要解决的问题 : 设计稿坐标数据转为屏幕真实坐标数据 | 实现步骤 )
  • 原文地址:https://blog.csdn.net/LBWNB_Java/article/details/127669673