rocketmq master宕机,主从数据不一直问题讨论
不管同步刷盘,还是异步刷盘,只要master挂了,都可能出现这种问题
场景: 1.首先,master宕机,消息不会往savle上写,这时候如果是异步刷盘,可能会导致,master,slave得数据不一直,salve可能会多比master多。当这个时候重启master,消费者会拿slave得消费进度去消费master得队列。导致出问题 怎么解决?: 1.从新从master上拉去消费进度 2.主从数据一致性怎么保证?这时候savle得数据比master数据多。数据不一致,如果继续往master上写数据,会不会又问题?
解决方案:
1.将slave的数据文件覆盖master数据问题 2.改源码,主从替换智能HA架构
RocketMQ采用主从式架构,具有低延迟和高吞吐量,但该程序需要人为干预才能从异常情况中恢复。 因此,我们希望支持多重复制高可用性/可靠性机制,无需人工干预。JIRAhttps://mp.weixin.qq.com/s?__biz=MzA3MTU2OTkzNw==&mid=2651878926&idx=1&sn=3db8eb2155452202fbcb23074740f9c4&chksm=84cf5170b3b8d8663a1a98b240775a7c42679232202d9c91fb55217ae6017eea0ecab4ceca87&mpshare=1&scene=23&srcid=0417b1ZNwz0uW6mbTcuT2tTq#rd
http://rocketmq.apache.org/docs/roadmap/https://issues.apache.org/jira/browse/ROCKETMQ-125