当前位置: 首页 > 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。

相关文章:

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

1. 基本概念 Topic: 消息类别的集合,如订单消息发送到order_topic。标签(Tag): 同一Topic下区分不同消息的标志,实现精细化消息管理。ConsumeGroup: 消息消费组,可订阅多个Topic,一个Topic可被多个消费组订…...

微信小程序骨架屏

骨架屏是常用的一种优化方案,针对于页面还未加载完时给用户的一种反馈方式。如果自己要写骨架屏有点复杂因为页面的元素过多且不稳定,这边直接使用微信开发工具生成骨架屏。也不只有微信开发工具有像常用的抖音开发工具,字节开发工具都有对应…...

Window下node安装以及配置

在 Windows 下安装 Node.js 非常简单,你可以通过官方提供的安装程序或者使用多版本管理工具(如 NVM-Win)来进行安装。下面是两种方法的具体步骤: 1. 安装 Node.js程序 步骤如下: 访问官方网站: 访问 Node…...

校园疫情防控系统--论文pf

TOC springboot432校园疫情防控系统--论文pf 课题的来源 2019年在我国武汉爆发了一场规模非常庞大、传播速度十分迅速、对人体危害及其严重的新冠肺炎疫情。引发此次急性感染性新冠肺炎疫情的冠状病毒传播性较强,其传播主要是通过呼吸道飞沫和密切接触这两个途径…...

在Debian 9上使用Apt安装Java的方法

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 介绍 Java 和 JVM(Java 虚拟机)是许多软件的必备组件,包括 Tomcat、Jetty、Glassfish、Cassandra 和…...

人工智能在网络安全中的三大支柱

人工智能 (AI) 席卷了网络安全行业,各种供应商都在努力将 AI 融入其解决方案中。但 AI 与安全之间的关系不仅仅在于实现 AI 功能,还在于攻击者和防御者如何利用该技术改变现代威胁形势。它还涉及如何开发、更新和保护这些 AI 模型。如今,网络…...

rk3568mpp终端学习笔记

RK3568Terminal封装MppGraph 通过脚本取和设置音量/zigsun/bin/linux/bin.debug.Linux.rk3568/get_record_voice_value.sh /zigsun/bin/linux/bin.debug.Linux.rk3568/set_record_voice_value.sh class RK3568Terminal : public IAVLinkManager, p…...

【C++继承】赋值兼容转换作用域派生类的默认成员函数

1.继承的概念 继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类(或子类)。继承呈现了面向对象程序设计的层次结构&#xf…...

HTML5+JavaScript绘制彩虹和云朵

HTML5JavaScript绘制彩虹和云朵 彩虹,简称虹,是气象中的一种光学现象,当太阳光照射到半空中的水滴,光线被折射及反射,在天空上形成拱形的七彩光谱,由外圈至内圈呈红、橙、黄、绿、蓝、靛、紫七种颜色。事实…...

MySQL——单表查询(二)按条件查询(2)带 IN 关键字的查询

IN 关键字用于判断某个字段的值是否在指定集合中,如果字段的值在集合中,则满足条件,该字段所在的记录将被查询出来。其语法格式如下所示: SELECT *|字段名 1,字段名 2,… FROM 表名 WHERE 字段名 [NOT〕IN(元素 1,元素 2,…) 在上…...

【mysql】mysql 用户管理---创建、权限管理等等

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8…...

本地服务器物理机中redis设置、取消密码

1.服务器物理机上redis的操作【服务器中操作】 (1)首先先看一下当前运行中的redis实例: [rootiZuf67k70ucx14s6zcv54dZ var]# ps aux | grep redis-server因为我这里有两个实例在运行,即物理机上的redis和docker中的redis&…...

关于xilinx的FFTIP的使用和仿真

工具:vivado2018.3,modelsim10.6d 场景:在进行数据进行频谱分析的时候,使用FPGA来完成FFT的计算可以加快数据的计算速度。 下面使用仿真完成DDS产生的数据的FFT以及IFFT。原始数据使用DDSIP产生,通过IP产生的波形数据…...

ant design pro 如何去保存颜色

上图 就是实现这样的效果 后端是这样的,这个颜色肯定是存到字符串里的 这是第一步 import mongoose, { Schema, Document } from mongoose;interface IDiscountCard extends Document {title: string;subtitle: string;image: string;shopUrl: string;bgColor: s…...

【Hadoop】建立圈内组件的宏观认识

01存储02计算03调度04其他05回忆 众多组件们构建了大规模分布式计算和存储平台。本文介绍Hadoop生态圈中各个组件的主要功能和作用,辅助学者理解每个组件的定位和用途,从而建立对圈内组件的宏观认识。梳理清楚HDFS、MapReduce、YARN、Hive、HBase、Spark…...

C++:命名空间与输入输出

目录 前言 一、命名空间 1.1 namespace的价值 1.2 namespace的定义 1.3 命名空间的使用 二、C输入&输出 前言 C是一种面向对象的计算机程序设计语言,‌它扩展了C语言的功能,‌并引入了面向对象编程的概念,‌如类、‌继承和多态等&a…...

Azure DevOps Server 数据库日志已满,TF30042: The database is full

Contents 1. 问题描述2. 处理方式 2.1 系统备份2.2 收缩日志2.3 恢复模式2.4 日志增长无法控制 1. 问题描述 Azure DevOps Server 作为微软的软件开发管理平台产品,理所当然地使用了微软的数据库软件SQL Server。 在一个大型的开发团队中,Azure DevOps S…...

[C#]OpenCvSharp 实现Bitmap和Mat的格式相互转换

//转为 bitmap方法一: Bitmap map OpenCvSharp.Extensions.BitmapConverter.ToBitmap(mat); process_pictureBox.Image map; //转为 bitmap方法二: Bitmap map new Bitmap(mat.ToMemoryStream()); process_pictureBox.Image map; //Image img 转为…...

【区块链+金融服务】基于区块链的供应链金融系统 | FISCO BCOS应用案例

传统供应链金融存在着信息不对称、信任问题和繁琐流程等弊端。为了解决这些问题,京北方搭建了基于区块链 的供应链金融系统,提供了更高效、透明、安全和可信的交易环境。 系 统 采 用 FISCO BCOS 为 底 层 链, 技 术 栈 使 用 Java 语 言 进…...

AI语言大模型商业价值深度解析

点击蓝字 关注我 随着人工智能(AI)技术的飞速发展,特别是深度学习算法的进步,AI语言大模型在自然语言处理领域的表现日益突出。国内外多种语言大模型如:OpenAi 的 ChatGpt,阿里通义千问,百度文心…...

ESP32平台后量子密码学Kyber算法优化实践

1. ESP32平台上的后量子密码学实践 在物联网设备数量呈指数级增长的今天,设备间的安全通信面临着前所未有的挑战。传统公钥加密算法如RSA和ECC正面临着量子计算的威胁——Shor算法能在多项式时间内破解这些基于大整数分解和离散对数问题的加密体系。作为应对&#x…...

这3个降AI提示词千万别用!让你的知网AI率反涨10个点过不了AIGC检测

这3个降AI提示词千万别用!让你的知网AI率反涨10个点过不了AIGC检测 室友的真实事故——降 AI 提示词用错知网 AI 率反涨 3 月 19 号晚上室友哭着发消息:「我上网搜了一个降 AI 万能提示词改完段落送知网测——AI 率从 67% 涨到 77% 了!这怎…...

Hotkey Detective:Windows热键冲突终极解决方案,快速定位“按键劫持“元凶

Hotkey Detective:Windows热键冲突终极解决方案,快速定位"按键劫持"元凶 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mir…...

收藏!小白程序员轻松入门大模型:3个月实现转岗高薪offer的秘诀

本文针对传统程序员转行AI大模型的困境,提出三条实用路径:RAG应用工程、Agent应用开发、模型微调与部署。强调工程能力在AI应用中的重要性,建议通过解决实际问题积累经验,而非单纯堆砌技术栈。文章指出,懂业务、善工程…...

从计数器到计时器:使用Spectator构建可观测性系统的实践指南

1. 项目概述:从“观众”到“观察者”的视角转变在软件开发,尤其是后端服务开发中,我们常常需要一种机制来观察和度量系统的内部状态。这种观察不是简单的日志打印,而是系统化、结构化地收集运行时指标,比如接口的调用次…...

AI代码助手与Django全栈开发:人机协同编程新范式实践

1. 项目概述:当AI代码助手遇上Django全栈开发如果你是一名独立开发者、初创公司的技术负责人,或者正在学习全栈开发,那么“Cursor-Django”这个项目绝对值得你花时间研究。这不是一个简单的Django教程,而是一个由Coding for Entre…...

基于RAG与LLM的智能文献分析工具OpenResearcher:从部署到实战全解析

1. 项目概述:一个为研究者量身打造的AI驱动开源工具箱 如果你是一名科研工作者、学术写手,或者任何需要深度处理文献、进行系统性知识梳理的人,那么你大概率经历过这样的场景:面对海量的PDF文献,手动下载、整理、阅读、…...

AI驱动编辑预设生成:从风格迁移到创意工作流的自动化实践

1. 项目概述:AI驱动的编辑预设库最近在折腾视频和图片后期,发现一个挺有意思的项目,叫kaushalrao/ai-editor-presets。这名字听起来有点技术范儿,但说白了,它就是一个用人工智能技术来生成和优化各类编辑软件预设文件的…...

论文详解:考虑人类移动日常节律的动态社区检测

论文详解:考虑人类移动日常节律的动态社区检测 文章目录 论文详解:考虑人类移动日常节律的动态社区检测 1. 论文基本信息 2. 摘要与核心贡献 2.1 研究背景 2.2 研究方法 2.3 核心贡献 3. 研究背景与问题提出 3.1 城市空间结构研究的重要性 3.2 传统静态社区检测的局限性 3.3 …...

量子启发式算法优化车联网通信与交通控制

1. 量子启发式算法在车联网中的创新应用在智慧城市建设的浪潮中,交通拥堵已成为困扰现代都市的顽疾。传统交通管理系统往往采用固定配时方案或简单的自适应控制,难以应对城市路网中瞬息万变的交通流变化。与此同时,随着车联网(V2X)技术的普及…...