1. Master Broker是如何将消息同步给Slave Broker的
我们都知道,为了保证MQ的数据不丢失而且具备一定的高可用性,一般都是得将Broker部署成Master-Slave模式的,也就是一个Master Broker对应一个Slave Broker。
然后Master需要在接收到消息之后,将数据同步给Slave,这样一旦Master Broker挂了,还有Slave上有一份数据。
那么Master Broker是如何将消息同步给Slave Broker的?是Master Broker主动推送给Slave Broker?还是Slave Broker发送请求到Master Broker去拉取?
答案是第二种,RocketMQ的Master-Slave模式采用的是Slave Broker不停的发送请求到Master Broker去拉取消息。
所以首先要明白这一点,就是RocketMQ自身的Master-Slave模式采取的是Pull模式拉取消息。
2 RocketMQ实现读写分离了吗?
既然Master Broker主