当前位置: 首页 > news >正文

RocketMQ核心知识点整理,值得收藏!

1. 基本概念

  • Topic: 消息类别的集合,如订单消息发送到order_topic
  • 标签(Tag): 同一Topic下区分不同消息的标志,实现精细化消息管理。
  • ConsumeGroup: 消息消费组,可订阅多个Topic,一个Topic可被多个消费组订阅。
  • 队列(Queue): Topic下的消息存储单元,可分布在多个Broker上。

2. 消息队列选择算法

  • 轮询算法: 默认算法,均匀分布消息到队列。
  • 最小投递延迟算法: 优先选择投递延迟小的队列,可能导致分布不均。

3. 消费模式

  • 集群模式: 消息在消费组内只被单个消费者消费,实现负载均衡。
  • 广播消费: 消息推送给所有消费者,适用于如缓存刷新的场景。

4. Confirm与重试机制

  • Confirm机制: 发送成功后MQ返回ack,失败返回nack。
  • 重试机制: 消息消费失败时,Broker提供延迟重试,最多16次,失败后转死信队列。

5. 死信队列

  • 处理无法正常消费的消息,超过重试次数后存储。

6. Queue分配算法

  • 平均分配策略: 默认,按队列数和消费者数平均分配。
  • 环形分配策略: 顺序分配队列形成环形。
  • 一致性Hash策略: 通过Hash值减少Rebalance。
  • 同机房策略: 优先分配同机房的队列。

7. Rebalance机制

  • 重新分配Queue以提升并行消费能力,触发场景包括队列数量变化或消费者数量变化。

8. 消息过滤

  • 根据Tag或自定义属性在Broker端过滤,减少无用消息传输。

9. 基本组件

  • Nameserver: 管理Topic路由。
  • Broker: 消息存储服务器,分为Master和Slave角色。
  • Client: 包括Producer和Consumer。

10. 消息复制

  • 同步复制: 消息同步到Slave后再返回,有延迟但数据安全。
  • 异步复制: 消息存储后立即返回,高吞吐量但可能数据丢失。

11. 消息类型

  • 延迟消息: 支持18个等级的延迟。
  • 事务消息: 保障分布式场景下消息与本地事务一致性。

12. 基本原理

  • 零拷贝: 使用mmap实现,减少CPU拷贝操作。
  • 消息存储: 包括CommitLog、ConsumeQueue、Index。

13. 消费方式

  • 拉取式消费(Pull Consumer): 主动从Broker拉取消息。
  • 推动式消费(Push Consumer): Broker主动推送消息给消费者。

14. 应用场景

  • 消息重试: 消费者消费失败后的重试机制。
  • 消息重投: 生产者发送失败后的重投策略。
  • 顺序消费: 包括分区顺序消息和全局顺序消息。

15. 顺序消息

  • 分区顺序消息: 同一分区内FIFO,不同分区无要求。
  • 全局顺序消息: 所有消息FIFO。
http://www.lryc.cn/news/426683.html

相关文章:

  • 微信小程序骨架屏
  • Window下node安装以及配置
  • 校园疫情防控系统--论文pf
  • 在Debian 9上使用Apt安装Java的方法
  • 人工智能在网络安全中的三大支柱
  • rk3568mpp终端学习笔记
  • 【C++继承】赋值兼容转换作用域派生类的默认成员函数
  • HTML5+JavaScript绘制彩虹和云朵
  • MySQL——单表查询(二)按条件查询(2)带 IN 关键字的查询
  • 【mysql】mysql 用户管理---创建、权限管理等等
  • 本地服务器物理机中redis设置、取消密码
  • 关于xilinx的FFTIP的使用和仿真
  • ant design pro 如何去保存颜色
  • 【Hadoop】建立圈内组件的宏观认识
  • C++:命名空间与输入输出
  • Azure DevOps Server 数据库日志已满,TF30042: The database is full
  • [C#]OpenCvSharp 实现Bitmap和Mat的格式相互转换
  • 【区块链+金融服务】基于区块链的供应链金融系统 | FISCO BCOS应用案例
  • AI语言大模型商业价值深度解析
  • 理解DDD领域驱动设计思想
  • 音频剪辑软件哪个好用?五大音频剪辑软件分享
  • 12.2 使用prometheus-sdk向pushgateway打点
  • HTTPS 详解
  • Microsoft Edge 使用方法与秘诀概览
  • 【视频】onvif、RTP、RTCP、SDP、RTSP、gb21818区别
  • 8-4 循环神经网络
  • Linux系统编程 --- 多线程
  • Grafana中的rate与irate以及histogram
  • 什么是网络安全态势感知
  • php 在app中唤起微信app进行支付,并处理回调通知