
RocketMQ
文章平均质量分 86
从单机版搭建入门,到分布式集群工作原理分析,再到搭建主从集群,自定义starter实现客户端整合使用案例,Producer源码分析梳理发送消息的流程,剖析客户端如何通过与NameServer通信完成发送消息工作的;
Consumer源码分析梳理Push模式消费者的工作流程
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
WannaRunning
这个作者很懒,什么都没留下…
展开
-
RocketMQ单机版安装启动
RocketMQ前身叫做MetaQ,在MeataQ发布3.0版本的时候改名为RocketMQ,使用Java进行开发。这篇文章不做过多介绍,主要记录安装过程步骤下载地址 https://rocketmq.apache.org/docs/quick-start/ 可以下载二进制直接使用,也可以下载源码使用maven进行自行编译后使用。RocketMQ服务端安装启动源代码编译安装编译需要maven环境unzip rocketmq-all-4.5.1-source-release.zip .原创 2020-12-22 15:32:39 · 436 阅读 · 0 评论 -
RocketMQ中的角色和集群工作原理
RocketMQ集群工作原理RocketMQ集群中有NameServ集群,poducer集群,consumer集群,broker集群,RocketMQ集群属于分布式集群架构,与cloud微服务集群有相似之处,原理图如下。RocketMQ中的角色NameServerNameServer底层是Netty实现的,可以理解为一个Topic路由注册中心,在RocketMQ体系中提供Broker服务注册和管理,路由信息管理功能。根据CAP理论,RocketMQ在名称服务这个模块的设计上选择了AP,因原创 2021-03-17 00:17:10 · 200 阅读 · 0 评论 -
RocketMQ主从同步集群搭建
目录集群工作流程修改nameServer和Broker启动脚本的JVM参数(非必要)配置RocketMQ全局环境变量(非必要)NameServer配置 NameServerStartUp源码【NameServer启动】 NamesrvConfig源码【业务参数】Broker配置启动NameServer和Broker服务配置rocketmq-console并启动搭建由2个Matser和2个Slave共4个Broker节点+2个NameServe...原创 2021-03-18 16:02:31 · 384 阅读 · 0 评论 -
项目中使用RocketMQ实现消息发送和消费
目录引入rocketmq-client依赖Producer配置DefaultMQProducer实例配置TransactionMQProducer实例Consumer配置并发消费的Consumer这篇文章直接使用原生的rocketmq-client依赖实现Producer和Consumer功能,原生的API更有利于理解RocketMQ。引入rocketmq-client依赖<dependency> <groupId>org.ap.原创 2021-03-30 14:04:31 · 579 阅读 · 0 评论 -
RocketMQ——TransactionMQProducer发送事务消息源码分析
TransactionMQProducer事务模式下的生产者,继承自DefaultMQProducer类,用于发送事务消息。成员变量TransactionListener 是实现事务消息的关键。同时需要明确TransactionMQProducer是非线程安全的(因为TransactionListener成员的存在),因此每一种事务消息都应该使用自己单独的TransactionMQProducer实例发送消息。public class TransactionMQProducer extends原创 2021-03-24 18:11:15 · 610 阅读 · 0 评论 -
RocketMQ——Consumer消费消息源码分析(Push模式)
目录长轮询机制Push模式下Consumer发送Pull消息请求的过程RebalanceImpl类Push模式下Consumer消息消费的实现Push模式下Broker端处理Pull请求的过程PullRequestHoldServiceReputMessageServiceRocketMQ中的Push模式是基于Pull模式的,Pull模式的实现可以概括为轮询,而Push模式的实现其实就是长轮询。长轮询机制长轮询是对普通轮询的一种优化方案,它平衡了传统Push/Pull原创 2021-03-26 17:35:08 · 330 阅读 · 0 评论 -
SpringBoot基于starter整合RocketMQ (附源码)
目录引入Starter依赖Yml配置发送消息全局的RocketMQTemplate发送事务消息@ExtRocketMQTemplateConfiguration@RocketMQTransactionListener消息消费@RocketMQMessageListenerApache官方提供了rocket-spring-starter用于SpringBoot项目中集成RocketMQ使用,其实是基于rocketmq-client的依赖进行封装的,而且starter有时原创 2021-03-28 14:47:23 · 512 阅读 · 0 评论 -
RocketMQ中的Producer重试和Consumer消费确认
目录Producer的重试Consumer的消费确认从保证消息准确发送和消费的角度考虑,RocketMQ中为生产者提供了发送重试机制,同时在消费端也提供了和RabbitMQ类似的的ACK机制。Producer的重试producer.setRetryTimesWhenSendFailed()方法设置发送失败时重试次数DefaultMQProducer producer = new DefaultMQProducer();producer.setProducerGroup("gr原创 2021-03-30 11:27:04 · 944 阅读 · 0 评论 -
浅谈RocketMQ的消息存储和读写实现
目录RocketMQ中消息存储和读取的实现方式RocketMQ存储架构的优缺点OS的PageCache机制Mmap(Memory Mapped Files)内存映射技术 && madviseMappedByteBuffer类RocketMQ中消息存储和读取的实现方式消息生产与消息消费相互分离。Producer端发送消息最终写入的是CommitLog,RocketMQ的CommitLog文件采用混合型存储(所有的Topic下的消息队列共用同一个CommitLog原创 2021-04-01 14:02:27 · 269 阅读 · 0 评论