基礎(chǔ)篇

Kafka特點(diǎn)

  • 分布式
    1. 多分區(qū)
    2. 多副本
    3. 多訂閱者
    4. 基于ZooKeepler調(diào)度
  • 高性能
    1. 高吞吐量,每秒幾十萬(wàn)
    2. 低延遲
    3. 高并發(fā)
    4. 時(shí)間復(fù)雜度o(1)
  • 持久性與擴(kuò)展性
    1. 數(shù)據(jù)可持久化
    2. 容錯(cuò)性
    3. 支持在線水平擴(kuò)展
    4. 消息自動(dòng)平衡

應(yīng)用場(chǎng)景

  • 消息隊(duì)列
  • 行為跟蹤
  • 元信息監(jiān)控
  • 日志收集
  • 流處理
  • 事件源
  • 持久性日志

基本概念

  • Producer:消息和數(shù)據(jù)的生產(chǎn)者,向Kafka的一個(gè)topic發(fā)布消息的進(jìn)程/代碼/服務(wù)
  • Consumer:消息和數(shù)據(jù)的消費(fèi)者,訂閱數(shù)據(jù)(Topic)并且處理其發(fā)布的消息的進(jìn)程/代碼/服務(wù)
  • Consumer Group:邏輯概念,對(duì)于同一個(gè)topic,會(huì)廣播給不同的 group,一個(gè)group中,只有一個(gè)consumer可以消費(fèi)該消息
  • Broker:物理概念,Kafka集群中的每個(gè)Kafka節(jié)點(diǎn)
  • Topic:邏輯概念,Kafka消息的類別,對(duì)數(shù)據(jù)進(jìn)行區(qū)分、隔離
  • Partition:物理概念,Kafka下數(shù)據(jù)存儲(chǔ)的基本單元。一個(gè)Topic數(shù)據(jù),會(huì)被分散存儲(chǔ)到多個(gè)Partition,每個(gè)Parition是有序的
    1. 每一個(gè)Topic被切分為多個(gè)Partitions
    2. 消費(fèi)者數(shù)目少于或等于Partition的數(shù)目
    3. Broker Group中的每一個(gè)Broker保存Topic的一個(gè)或多個(gè)Partitions
    4. Consumer Group中僅有一個(gè)Consumer讀取Topic的一個(gè)或多個(gè)Partition,并且是唯一的Consumer
  • Replication:同一個(gè)Partition可能會(huì)有多個(gè)Replica,多個(gè)Replica之間數(shù)據(jù)是一樣的
    1. 當(dāng)集群中有Broker掛掉的情況,系統(tǒng)可以主動(dòng)地使用Replicas提供服務(wù)
    2. 系統(tǒng)默認(rèn)設(shè)置每一個(gè)Topic的replication系數(shù)為1,可以在創(chuàng)建Topic時(shí)單獨(dú)設(shè)置
    3. Replication的基本單位是Topic的Partition
    4. 所有的讀和寫都從Leader進(jìn),F(xiàn)ollowers只是作為備份
    5. Follower必須能夠及時(shí)復(fù)制Leader的數(shù)據(jù)
    6. 增加容錯(cuò)性和可擴(kuò)展性
  • Replication Leader:一個(gè)Partition的多個(gè)Replica上,需要一個(gè)Leader負(fù)責(zé)該P(yáng)artition上與Producer和Consumer交互

基礎(chǔ)結(jié)構(gòu)

kafka1.png
  • Producer Api
  • Cnosumer Api
  • Streams Api
  • Connectors Api


    Kafka基礎(chǔ)結(jié)構(gòu)2.png

消息結(jié)構(gòu)

消息結(jié)構(gòu).png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容