RocketMQ中的master和slave可以认为是物理上的概念。一台机器要么是master,要么是slave,与topic无关,是在配置文件中指定的(也可以换种方式理解,认为master和slave是逻辑上的概念,broker是物理上的概念。但是一个broker要么是master,要么是slave)。master与slave通过配置brokerName来进行配对。相同的brokerName中,brokerId为0的表示master,其他表示slave。
示例图中有9台broker机器。
kafka:
kafka中的master和slave可以认为是逻辑上的概念。一个broker上可以部署master,也可以部署slave。
示例图中有3台broker机器。
我们可以看出其中较为关键的差异,kafka的master与slave是由选举产生的,需要zookeeper提供的选举机制。RocketMQ的master与slave是由配置确认的,一旦确认不会改变。
原文:rocketMQ总结https://www.cnblogs.com/anhaogoon/p/12844853.html