一個Topic的多個分區,被分布在kafka叢集中的多個server上。每個分區都有一個server為"leader";leader負責所有的讀寫操作,如果leader失效,那麼将會有其他follower來接管(成為新的leader);follower隻是單調的和leader 跟進,同步消息即可。由此可見作為leader的server承載了全部的請求壓力,是以從叢集的整體考慮,有多少個partitions就意味着有多 少個"leader",kafka會将"leader"均衡的分散在每個執行個體上,來確定整體的性能穩定。
具體流程:
1. Producer根據指定的partition方法,将消息釋出到指定topic的partition裡面
2. kafka叢集接收到Producer發過來的消息後,将其持久化到硬碟
3.Consumer從kafka叢集pull資料,并控制擷取消息的offset

作者:Rick__想太多先森