Kafka常见名词
Broker MQ服務器端 構建一個kafka服務 多個Broker 多個kafka集群。
Producer: 生產者:向Broker中投遞消息
Consumer:消費者:從mq服務器端Broker 當中獲取消息。
Consumer Group: 消費者組 在同一個消費者組中是不能夠消費同一個分區中消息的,
在多個不同的消費者組中,多個不同消費者可以消費到同一條消息。
Topic: 主題:存放消息的隊列分類 根據業務來實現分類 比如郵件主題、短信主題、優惠券的主題,邏輯概念。
Partition: 分區存放消息 一個topic分成多個不同區域存放起來 目的是為了后期消費者能夠實現擴展性。
Replica: 副本數據
Offset:標記我們消費者消費的位置。
在kafka中不管消費者消費成功還是失敗,實際上該消息不會立馬被刪除,都是后期通過定時任務刪除消息, 通過offset值可以靈活獲取到以前已經被消費的消息。
ZooKeeper: brokers、topics信息都會存放在zk上。
Leader:
Follower:
Producer:消息生產者,向 Kafka Broker 發消息的客戶端。
Consumer:消息消費者,從 Kafka Broker 取消息的客戶端。
Consumer Group:消費者組(CG),消費者組內每個消費者負責消費不同分區的數據,提高消費能力。一個分區只能由組內一個消費者消費,消費者組之間互不影響。所有的消費者都屬于某個消費者組,即消費者組是邏輯上的一個訂閱者。
Broker:一臺 Kafka 機器就是一個 Broker。一個集群由多個 Broker 組成。一個 Broker 可以容納多個 Topic。
Topic:可以理解為一個隊列,Topic 將消息分類,生產者和消費者面向的是同一個 Topic。
Partition:為了實現擴展性,提高并發能力,一個非常大的 Topic 可以分布到多個 Broker (即服務器)上,一個 Topic 可以分為多個 Partition,每個 Partition 是一個 有序的隊列。
Replica:副本,為實現備份的功能,保證集群中的某個節點發生故障時,該節點上的 Partition 數據不丟失,且 Kafka 仍然能夠繼續工作,Kafka 提供了副本機制,一個 Topic 的每個分區都有若干個副本,一個 Leader 和若干個 Follower。
Leader:每個分區多個副本的“主”副本,生產者發送數據的對象,以及消費者消費數據的對象,都是 Leader。
Follower:每個分區多個副本的“從”副本,實時從 Leader 中同步數據,保持和 Leader 數據的同步。Leader 發生故障時,某個 Follower 還會成為新的 Leader。
Offset:消費者消費的位置信息,監控數據消費到什么位置,當消費者掛掉再重新恢復的時候,可以從消費位置繼續消費。
ZooKeeper:Kafka 集群能夠正常工作,需要依賴于 ZooKeeper,ZooKeeper 幫助 Kafka 存儲和管理集群信息。
總結
- 上一篇: Kafka设计原理
- 下一篇: 注解@CrossOrigin解决跨域问题