RocketMQ

Rocketmq使用

Rocketmq 生产者、消费者 maven引用 <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.7.0</version> </depen ......
Rocketmq

RocketMQ 为什么会丢消息,如何保证消息不丢失

Producer 丢消息 1.同步发送 RocketMQ发送消息有三种模式,即同步发送,异步发送、单向发送。 同步发送消息时会同步阻塞等待Broker返回发送结果,如果发送失败不会收到发送结果SendResult,这种是最可靠的发送方式。 异步发送消息可以在回调方法中得知发送结果。 单向发送是消息发 ......
消息 RocketMQ

Prometheus监控RocketMQ

本文基于官方提供的RocketMQ Exporter来监控RocketMQ集群 1.Broker TPS/QPS的监控 2.消息积压监控 3.消费组消费演示监控 最终的Grafana面板效果图如下: 楼主RocketMQ环境是三主三从集群(只要在其中一台部署监控即可) 配置步骤 1.安装Rocket ......
Prometheus RocketMQ

【漏洞复现】Apache RocketMQ 代码注入漏洞(CVE-2023-37582)

产品介绍 Apache RocketMQ是美国阿帕奇(Apache)基金会的一款轻量级的数据处理平台和消息传递引擎。 漏洞概述 Apache RocketMQ 存在代码注入漏洞,该漏洞源于当 NameServer 地址在外网泄露且缺乏权限验证时,NameServer 组件仍然存在远程命令执行漏洞,在 ......
漏洞 RocketMQ 代码 Apache 37582

【RocketMQ】RocketMQ 5.0新特性(三)- Controller模式

在RocketMQ 5.0以前,有两种集群部署模式,分别为主从模式(Master-Slave模式)和Dledger模式。 主从模式 主从模式中分为Master和Slave两个角色,集群中可以有多个Master节点,一个Master节点可以有多个Slave节点。Master节点负责接收生产者发送的写入 ......
RocketMQ Controller 特性 模式 5.0

博学谷学习记录 自我总结 用心分享 | RocketMQ刨析

RocketMQ是一个分布式开放消息中间件,底层基于队列模型来实现消息收发功能。RocketMQ集群中包含4个模块:Namesrv, Broker, Producer, Consumer。 主要功能 削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题) 系统解耦(解决不同重要程 ......
自我总结 RocketMQ

【RocketMQ】RocketMQ 5.0新特性(二)- Pop消费模式

Pop模式消费和消息粒度负载均衡 在RocketMQ 5.0之前,消费有两种方式可以从Broker获取消息,分别为Pull模式和Push模式。 Pull模式:消费需要不断的从阻塞队列中获取数据,如果没有数据就等待,这个阻塞队列中的数据由消息拉取线程从Broker拉取消息之后加入的,所以Pull模式下 ......
RocketMQ 特性 模式 5.0 Pop

RocketMQ为什么要保证订阅关系一致

这篇文章,笔者想聊聊 RocketMQ 最佳实践之一:保证订阅关系一致。 订阅关系一致指的是同一个消费者 Group ID 下所有 Consumer 实例所订阅的 Topic 、Tag 必须完全一致。 如果订阅关系不一致,消息消费的逻辑就会混乱,甚至导致消息丢失。 1 订阅关系演示 首先我们展示正确 ......
RocketMQ

【RocketMQ】RocketMQ存储结构设计

CommitLog 生产者向Broker发送的消息,会以顺序写的方式,写入CommitLog文件,CommitLog文件的根目录由配置参数storePathRootDir决定,默认每一个CommitLog的文件大小为1G,如果文件写满会新建一个CommitLog文件,以该文件中第一条消息的偏移量为文 ......
RocketMQ 结构设计 结构

RocketMQ 中订阅关系 按照业务分类合理拆分主题

小结: 1、 流式操作语义 Apache RocketMQ 基于队列的存储模型可确保消息从任意位点读取任意数量的消息,以此实现类似聚合读取、回溯读取等特性,这些特性是RabbitMQ、ActiveMQ等非队列存储模型不具备的。 2、 Apache RocketMQ 队列模型和Kafka的分区(Par ......
业务分类 RocketMQ 业务 主题

【RocketMQ】Dledger模式下的日志复制

RocketMQ在开启Dledger时,使用DLedgerCommitLog,其他情况使用的是CommitLog来管理消息的存储。在Dledger模式下,消息写入时Leader节点还需要将消息转发给Follower节点,有过半的节点响应成功,消息才算写入成功。 Leader消息写入 Dledger下 ......
RocketMQ Dledger 模式 日志

RocketMQ简单入门

服务端安装及配置 docker安装 docker pull rocketmqinc/rocketmq:4.4.0 指定版本号是为了后面确定配置文件的路径 启动namesrv docker run -d -p 9876:9876 --name rocketmq-nameservice -e MAX_P ......
RocketMQ

【RocketMQ】DLedger模式下的选主流程分析

RocketMQ 4.5版本之前,可以采用主从架构进行集群部署,但是如果master节点挂掉,不能自动在集群中选举出新的Master节点,需要人工介入,在4.5版本之后提供了DLedger模式,使用Raft算法,如果Master节点出现故障,可以自动选举出新的Master进行切换。 Raft协议 R ......
主流程 RocketMQ 主流 DLedger 模式

【RocketMQ】主从同步实现原理

RocketMQ支持集群部署来保证高可用。它基于主从模式,将节点分为Master、Slave两个角色,集群中可以有多个Master节点,一个Master节点可以有多个Slave节点。Master节点负责接收生产者发送的写入请求,将消息写入CommitLog文件,Slave节点会与Master节点建立 ......
主从 RocketMQ 原理

【RocketMQ】Rebalance负载均衡总结

消费者负载均衡,是指为消费组下的每个消费者分配订阅主题下的消费队列,分配了消费队列消费者就可以知道去消费哪个消费队列上面的消息,这里针对集群模式,因为广播模式,所有的消息队列可以被消费组下的每个消费者消费不涉及负载均衡,而集群模式一个消息队列同一时间只能分配给组内的一个消费者进行消费。 Rocket ......
Rebalance RocketMQ

【1.0】RocketMQ初识

【一】什么是RocketMQ RocketMQ 是一款功能强大的分布式消息系统,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网、车联网等。 RocketMQ 源码地址:https://github.com ......
RocketMQ 1.0

【RocketMQ】事务实现原理总结

RocketMQ事务的使用场景 单体架构下的事务 在单体系统的开发过程中,假如某个场景下需要对数据库的多张表进行操作,为了保证数据的一致性,一般会使用事务,将所有的操作全部提交或者在出错的时候全部回滚。以创建订单为例,假设下单后需要做两个操作: 在订单表生成订单 在积分表增加本次订单增加的积分记录 ......
RocketMQ 原理 事务

RocketMq发送消息之事务消息

概述 事务消息共有三种状态,提交状态、回滚状态、中间状态: TransactionStatus.CommitTransaction: 提交事务,它允许消费者消费此消息。 TransactionStatus.RollbackTransaction: 回滚事务,它代表该消息将被删除,不允许被消费。 Tr ......
消息 RocketMq 事务

RocketMq发送消息之过滤消息

过滤消息概述 在大多数情况下,TAG是一个简单而有用的设计,其可以来选择您想要的消息。例如: // 定义一个group1的消费者组 DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("group1"); // 订阅 TOPIC 主题 ......
消息 RocketMq

深入理解RocketMQ 广播消费

这篇文章我们聊聊广播消费,因为广播消费在某些场景下真的有奇效。笔者会从基础概念、实现机制、实战案例、注意事项四个方面一一展开,希望能帮助到大家。 1 基础概念 RocketMQ 支持两种消息模式:集群消费( Clustering )和广播消费( Broadcasting )。 集群消费: 同一 To ......
RocketMQ

RocketMq发送消息之批量消息

概述 批量发送消息能显著提高传递小消息的性能。限制是这些批量消息应该有相同的topic,相同的waitStoreMsgOK,而且不能是延时消息。此外,这一批消息的总大小不应超过4MB 发送批量消息 如果您每次只发送不超过4MB的消息,则很容易使用批处理,样例如下: String topic = "B ......
消息 RocketMq

RocketMq发送消息之延迟消息

延迟消息 比如电商里,提交了一个订单就可以发送一个延时消息,1h后去检查这个订单的状态,如果还是未付款就取消订单释放库存。 使用限制 对比于rabbitmq中的延迟消息来说,rockermq并不支持任意时间的延迟,需要设置几个固定的延时等级,从1s到2h分别对应着等级1到18级 // org/apa ......
消息 RocketMq

RocketMQ发送消息之同步异步单向

官网教程:https://rocketmq.apache.org/zh/docs/quickStart/01quickstart 基于双主双从异步方式开启的前提下,在maven项目中引入下列依赖 <dependency> <groupId>org.apache.rocketmq</groupId> ......
单向 RocketMQ 消息

RocketMQ源码(六):RocketMQ消费者启动流程

RocketMQ通过Consumer消费消息,可并发和顺序的处理消息,这里以并发消费普通消息为例,分析消息下佛诶的整体流程。Consumer的示例代码如下: 1 import com.snails.rmq.common.RMQConstant; 2 import org.apache.rocketm ......
RocketMQ 源码 流程 消费者

CentOS7 安装RocketMQ5.1.3

安装JDK 1.要求jdk1.8以上,官网下载地址:https://www.oracle.com/cn/java/technologies/downloads/ 2.下载完成后放到/home/downloadfile 没有目录手动创建 3.解压JDK文件到/usr/lib/jvm目录中 tar -x ......
RocketMQ5 RocketMQ CentOS7 CentOS 1.3

【RocketMQ】顺序消息实现总结

全局有序 在RocketMQ中,如果使消息全局有序,可以为Topic设置一个消息队列,使用一个生产者单线程发送数据,消费者端也使用单线程进行消费,从而保证消息的全局有序,但是这种方式效率低,一般不使用。 局部有序 假设一个Topic分配了两个消息队列,生产者在发送消息的时候,可以对消息设置一个路由I ......
顺序 RocketMQ 消息

RocketMQ

https://blog.csdn.net/weixin_44981707/article/details/124138939 https://zhuanlan.zhihu.com/p/528956421?utm_id=0 ......
RocketMQ

【RocketMQ】消息的消费总结

消费者从Broker拉取到消息之后,会将消息提交到线程池中进行消费,RocketMQ消息消费是批量进行的,如果一批消息的个数小于预先设置的批量消费大小,直接构建消费请求ConsumeRequest将消费请求提交到线程池处理,否则需要分批构建进行提交。 消息消费 在消息被提交到线程池后进行处理时,会调 ......
RocketMQ 消息

RocketMQ 消息重试与死信队列

RocketMQ 消息重试与死信队列 RocketMQ 前面系列文章如下: RocketMQ系列(一) 基本介绍 RocketMQ 系列(二) 环境搭建 RocketMQ 系列(三) 集成 SpringBoot RocketMQ 系列(四) 消息存储 RocketMQ 系列(五)高可用与负载均衡 消 ......
死信 队列 RocketMQ 消息

RocketMQ 入门实战(4)--Java 操作 RocketMQ

本文主要介绍使用 Java 来操作 RocketMQ,文中所使用到的软件版本:Java 1.8.0_341、RocketMQ 5.1.3、rocketmq-client-java 5.0.5。 1、引入依赖 <dependency> <groupId>org.apache.rocketmq</gro ......
RocketMQ 实战 Java
共292篇  :2/10页 首页上一页2下一页尾页