目录一、问题思考 二、事务消息客户端发送流程 1.事务发送与普通启动差异 2.事务消息发送调用链 3.事务消息发送分析 4.事务消息发送结果分析 5.结束事务分析 三、事务消息服务端存储流程 1.事务消息存储调用链 2.事务半消息存储代码分析(一) 3.事务半消息存储代码分析(二) 四、事务消息服务端响应结束事务请求 1.处理未知类型请求 2.处理事务提交请求 3.处理事务回滚请求 五、事务消息
转载 2024-09-09 00:40:59
112阅读
基于4.9.0版本分析,https://github.com/apache/rocketmq/tree/rocketmq-all-4.9.01. 缘起阿里内部为了适应淘宝更快、更复杂的业务,在2001年启动了「五彩石项目」,第一代消息队列服务Notify在这个背景下应运而生。2010年ActiveMQ仍然作为核心技术广泛应用于阿里内部各个业务线,与此同时,支持顺序消息、事务消息、海量消息堆积的消息
本文站在消费者和生产者的角度给出一些RocketMQ客户端使用的实践意见。一、Producer最佳实践发送消息注意事项一个应用尽可能用一个Topic,消息子类型用tags来标识,tags可以由应用自由设置。只有发送消息设置了tags,消费方在订阅消息时,才可以利用tags在broker做消息过滤。message.setTags("TagA");每个消息在业务层面的唯一标识码,要设置到keys字段,
转载 2024-06-04 14:17:11
675阅读
目录1. MQ介绍1.1 为什么要用MQ1.2 MQ的优点和缺点1.3 各种MQ产品的比较2. RocketMQ快速入门2.1.1 下载RocketMQ2.2.2 环境要求2.2 安装RocketMQ2.2.1 安装步骤2.2.2 目录介绍2.3 启动RocketMQ2.4 测试RocketMQ2.4.1 发送消息2.4.2 接收消息2.5 关闭RocketMQ3. RocketMQ集群搭建3.
转载 11月前
57阅读
本文主要记录Springboot集成RocketMQ来实现延时消息和事务消息1.坏境基于springboot2.6.8,客户端RocketMQ4.9.3,rocket依赖如下<dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-spring-boot-st
转载 7月前
141阅读
如何实现顺序消息? 需要程序保证发送和消费的是同一个 Queuerocketmq默认发送的消息是进入多个消息队列,然后消费端多线程并发消费,所以默认情况,不是順序消费消息的;有時候,我们需要顺序消费一批消息,比如电商系统 订单创建、支付、完成操作,需要順序执行;RocketMQTemplate给我们提供了SendOrderly方法(有多個重载),来实现发送顺序消息;包括以下:syncSendOrd
转载 2024-03-17 14:05:25
884阅读
SpringBoot2.0—国际化国际化源码解析如何编写我们自己的国际化源码地址: 国际化源码解析1.查看MessageSourceAutoConfiguration类,springBoot已经默认自动配置好了管理国际化资源文件的组件;@Bean @ConfigurationProperties( prefix = "spring.messages" )默认配置文件为message
转载 2024-05-10 11:45:56
21阅读
生成者、消费者 生成者: 1 创建消息生产者producer,并制定生成者组名 2 指定Nameserver地址 3 启动producer 4 创建消息对象,指定主题Topic,Tag消息体 5 发送消息 6 关闭生成者produce 消费者: 1 创建消息者Consumer,制定消费者组名 2 指定Nameserver地址 3 订阅主题Topic和Tag 4 设置回调函数,处理消息 5 启动消
转载 2024-03-26 11:29:43
279阅读
1. 最佳实践之 Producer1. 一个应用尽可能用一个 Topic,消息子类型用 tags 来标识,tags 可以由应用自由设置。只有发送消息设置了 tags,消费方在订阅消息时,才可以利用 tags 在 broker 做消息过滤。message.setTags("TagA");2. 每个消息在业务层面的唯一标识码,要设置到 keys 字段,方便将来定位消息丢失问题。服务器会为每个消息创建索
转载 2024-06-05 10:33:15
140阅读
消息队列 ~ RocketMQ ~ 从入门到入坑。 文章目录消息队列 ~ RocketMQ ~ 从入门到入坑。下载。使用。shutdown。测试发送消息。集群。集群模式。单 Master模式。多 Master 模式。多 Master 多 Slave 模式(异步)。多 Master 多 Slave 模式(同步)。双主双从集群搭建。集群特点。集群工作流程。配置文件。mqadmin。图形管理工具。Jav
topic、tagkey的区别?topic是消息的一级分类,tag相当于是消息的二级分类,key一般用于消息在业务层面的唯一标识。对发送的消息设置Key,以后可以根据这个 Key 来查找消息。关于consumerGroup:一个consumerGroup下可以有多个消费者,但是必须订阅相同的topic和tag,否则后启动的消费者会覆盖前面消费者订阅的topic和tag消息有2种消费方式,被
转载 2024-03-06 21:25:21
187阅读
文章目录RocketMQ快速实战和集群架构RocketMQ快速实战下载安装快速运行RocketMQRocketMQ集群架构配置RocketMQ主从集群搭建管理控制台RocketMQ消息模型概念 RocketMQ快速实战和集群架构RocketMQ快速实战下载安装RocketMQ的官网地址: http://rocketmq.apache.org ,github地址是 https://github.c
转载 2024-07-16 09:53:49
136阅读
tag 的使用场景:不同的消费组,订阅同一 topic 不同的 tag,拉取不同的消息并消费。在 topic 内部对消息进行隔离。 producer 发送消息,指定 tag consumer 订阅 topic,指定 tag broker 存储 consumer 订阅的 tag 信息 broker 计
原创 2022-11-15 15:04:10
1255阅读
RocketMQ-批量发送消息批量发送消息可提高传递小消息的性能。同时也需要满足以下特征:批量消息要求必要具有同一topic、相同消息配置不支持延时消息建议一个批量消息最好不要超过1MB大小示例:String topic = "BatchTest"; List<Message> messages = new ArrayList<>(); messages.add(new M
转载 2024-02-22 12:17:48
216阅读
一、磁盘文件结构1.1文件简介RocketMQ的Broker机器磁盘上的文件存储结构CommitLog:消息主体以及元数据的存储主体,存储Producer端写入的消息主体内容。单个文件大小默认1G,文件名长度为20位,左边补零,剩余为起始偏移量,比如00000000000000000000代表了第一个文件,起始偏移量为0,文件大小为1G=1073741824;当第一个文件写满了,第二个文件为000
前言最近有看分布式的事务相关的内容。之前有配置过XA模式的分布式事务。然后又刚好看了有关rocketmq的最终一致性的相关方案。决定实践一下逻辑实现1、A 系统先发送一个 prepared 消息到 mq,如果这个 prepared 消息发送失败那么就直接取消操作别执行了; 2、如果这个消息发送成功过了,那么接着执行本地事务,如果成功就告诉 mq 发送确认消息,如果失败就告诉 mq 回滚消息; 3、
转载 2024-06-05 13:47:26
306阅读
概述    这篇文章的目的主要是为了讲清楚rocketMq消息堆积的概念,我印象中的rocketMq消息堆积应该分为两层,一层是broker中实际写入消息量和consumeQueue已经消费位移的偏差,另外一层consumer端本身已经拉取消息的堆积,而今天要讲的正是后者。    这个问题的起源是当时有个其他公司的同事遇到consume
文章目录消息队列 RocketMQ:(一)概述消息队列 RocketMQ:(二)系统架构消息队列 RocketMQ:(三)发送普通消息(三种方式)消息队列 RocketMQ:(四)顺序消息消息队列 RocketMQ:(五)延时消息消息队列 RocketMQ:(七)批量消息前提创建一个 Maven 的 Java 工程。 引入 RocketMQ 的 Client 依赖,版本需要和服务端一致。<d
转载 2024-06-22 11:40:35
42阅读
消息队列有两种消息模型,分别是队列模型和发布/订阅模型。队列模型队列模型是最开始的一种消息队列模型,对应着消息队列“发-存-收”的模型。生产者往某个队列里面发送消息,一个队列可以存储多个生产者的消息,一个队列也可以有多个消费者,但是消费者之间是竞争关系,也就是说每条消息只能被一个消费者消费。发布/订阅模型如果需要将一份消息数据分发给多个消费者,并且每个消费者都要求收到全量的消息。很显然,队列模型无
RocketMQ-消息消费模式 顺序消费RocketMQ-消息消费模式集群模式集群模式的演示(本身就默认)Rocketmq存储队列广播模式顺序消费如何改实现顺序消费 RocketMQ-消息消费模式集群模式在消费模式为集群的情况下,如果机器是集群的,消息只会给集群中的其中一台机器消费到集群模式的演示(本身就默认)假设我们生产者生产了十条信息 ,当我们集群了两台消费者服务器的时候,就会每个服务器执行
转载 2024-06-30 05:13:35
173阅读
  • 1
  • 2
  • 3
  • 4
  • 5