
RocketMQ
文章平均质量分 78
云川之下
这个作者很懒,什么都没留下…
展开
-
【RocketMQ】RemotingTooMuchRequestException: sendDefaultImpl call timeout
aa原创 2022-08-04 16:58:21 · 846 阅读 · 0 评论 -
【RocketMQ】消息重试
参考消息中间件系列教程(14) -RabbitMQ-自动补偿机制原创 2022-08-04 16:18:33 · 3572 阅读 · 0 评论 -
分布式事务及解决方案(2PC、3PC、TCC事务补偿、本地消息表)
参考面试必问:分布式事务六种解决方案分布式事务的四种解决方案原创 2021-09-30 11:21:49 · 1025 阅读 · 0 评论 -
【RocketMQ】消息重试、重试次数设置、死信队列
文章目录1. 死信队列1.1 死信特性1.2 查看死信消息参考1. 死信队列上一篇《RocketMQ:消息重试》中我们提到当一条消息消费失败时,RocketMQ会进行一定次数的重试。重试的结果也很简单,无非就是在第N次重试时,被成功消费。或者就是经过M次重试后,仍然没有被消息。这通常是由于消费者在正常情况下无法正确地消费该消息。此时,RocketMQ不会立即将消息丢弃,而是将其发送到该消费者对应的特殊队列中去。在RocketMQ中,这种正常情况下无法被消费的消息被称为死信消息(Dead-Lette原创 2021-09-28 16:09:30 · 22759 阅读 · 3 评论 -
【RocketMQ】RocketMQ支持事务消息机制 二
文章目录1. 消息发送2. 消息确认3. rollback4. commit参考相关文章:RocketMQ支持事务消息机制 一RocketMQ支持事务消息机制 二1. 消息发送普通发送消息,是直接根据topic的queue最终写入到commitlog的,然后可以被消费者消费。比如现在往broker的orderTopic发送事务,不会先把half消息的offset写入orderTopic的queue里面去,而是写入broker内部的“RMQ_SYS_TRANS_HALF_TOPIC”对应的Consu转载 2021-08-16 16:55:33 · 155 阅读 · 0 评论 -
【RocketMQ】RocketMQ支持事务消息机制 一
文章目录1. 事务消费1.1 分布式事务—————— 两阶段提交协议1.2 使用消息队列来避免分布式事务1.2.1 业务与消息耦合的方式1.2.2 业务与消息解耦方式2.那么如何解决消息重复投递的问题?2.1 大事务 = 小事务 + 异步2.2 RocketMQ的实现2.2.1 RocketMQ事务实现原理2.2.2 消费失败和消费超时2.2.3 交易事务处理示例3. 如何保证扣钱与加钱的事务的最终一致性参考1. 事务消费我们经常支付宝转账余额宝,这是日常生活的一件普通小事,但是我们思考支付宝扣除转账的转载 2021-08-16 16:23:47 · 614 阅读 · 0 评论 -
【RocketMQ】消息存储(CommitLog、ConsumeQueue、offsetTable )
文章目录概述1. MQ消息队列的一般存储方式2. RocketMQ消息存储整体架构2.1 RocketMQ消息存储结构类型及缺点2.2 RocketMQ消息存储架构深入分析2.2.1 CommitLog2.2.2 ConsumeQueue2.2.2.1 ConsumeQueue的作用2.3 PageCache与Mmap内存映射参考概述MQ分布式消息队列大致流程在于消息的一发一收一存,本篇将为大家主要介绍下RocketMQ存储部分的架构消息存储是MQ消息队列中最为复杂和最为重要的一部分,所以小编也就放原创 2021-08-13 14:32:21 · 2860 阅读 · 0 评论 -
【RocketMQ】过滤消息(tag过滤、sql过滤)
文章目录概述Tag过滤SQL过滤概述在大多数情况下,可以使用Message的Tag属性来简单快速的过滤信息。Tag过滤使用Tag过滤消息的消息生产者案例见:org.apache.rocketmq.example.filter.TagFilterProducer使用Tag过滤消息的消息消费者案例见:org.apache.rocketmq.example.filter.TagFilterConsumer主要是看消息消费者。consumer.subscribe(“TagFilterTest”, “Ta原创 2021-08-12 15:53:55 · 1662 阅读 · 0 评论 -
【RocketMQ】批量消息
文章目录1. 批量消息2. 示例1. 批量消息批量消息是指将多条消息合并成一个批量消息,一次发送出去。这样的好处是可以减少网络IO,提升吞吐量。大家在官网以及测试代码中都看到了关键的注释:如果批量消息大于1MB就不要用一个批次发送,而要拆分成多个批次消息发送。也就是说,一个批次消息的大小不要超过1MB实际使用时,这个1MB的限制可以稍微扩大点,实际最大的限制是4194304字节,大概4MB。但是使用批量消息时,这个消息长度确实是必须考虑的一个问题。而且批量消息的使用是有一定限制的,这些消息应该有原创 2021-08-12 11:44:05 · 920 阅读 · 0 评论 -
【RocketMQ】延迟消息(延迟队列)
文章目录1. 什么是延迟消息1.1 延时消息的使用场景2. 示例3. 原理参考1. 什么是延迟消息发送消息后,消费者要等待一定的时间才能消费到该消息。RocketMQ 不支持任意时间自定义的延迟消息,仅支持内置预设值的延迟时间间隔的延迟消息。预设值的延迟时间间隔为:1s、 5s、 10s、 30s、 1m、 2m、 3m、 4m、 5m、 6m、 7m、 8m、 9m、 10m、 20m、 30m、 1h、 2h对于开源版是这样,而对于专业版,是可以自定义时间的。1.1 延时消息的使用场景原创 2021-08-12 11:22:24 · 6683 阅读 · 0 评论 -
【RocketMQ】广播消息(广播模式)
文章目录概述示例参考概述这篇文章主要是用来讲解RocketMq广播模式消费实现逻辑,核心差别在于:1、广播模式消费位移使用本地文件存储、2、Rebalance过程中同一个ConsumeGroup下的consumer不会进行MessageQueue的分配;而是每个consumer负责消费所有MessageQueue。示例public class Consumer { public static void main(String[] args) throws InterruptedExce原创 2021-08-12 10:46:56 · 2723 阅读 · 0 评论