RocketMQ主从同步、消费进度同步、读写分离

数据同步过程:
RocketMQ 的主从同步机制如下:
(1) slave启动,跟master建立连接
(2) slave 以5秒的间隔,向master拉取消息,如果是第一次拉取的话,先获取本地commitlog文件中最大的偏移量,以该偏移量向服务端拉取消息;
(3) master将数据返回给slave
(4) slave将数据写入自身commitLog中,更新偏移量;重复以上步骤

读写分离机制:
(1) 首先读写分离都是,写master,读slave;搭配主从同步机制
(2) RocketMQ 有属于自己的一套读写分离逻辑,它会判断主服务器的消息堆积量来决定消费者是否向从服务器拉取消息消费,阈值是大于内存的40%;默认消费者还是读master
(3) 当发现内存大于阈值,则slaveReadEnable 设置为true,然后设置suggestWhichBrokerId 为从机的BrokerID

消费进度同步:
(1) 消息消费进度的同步时单向的,从服务器开启一个定时任务,定时从主服务器同步消息消费进度;
(2) 无论消息消费者是从主服务器拉的消息还是从从服务器拉取的消息,在向Broker反馈消息消费进度时,优先向主服务器汇报

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值