kafka學習筆記

2022-05-02 09:24:19 字數 1554 閱讀 8513

最近在做測試平台的開發過程中,需要用到訊息佇列,在簡單調研後選取了主流的kafka做為我們平台的訊息中介軟體,以下是對kafka的學習筆記。

訊息在同乙個consumer group下的consumer間,實行負載均衡

訊息在不同consumer group下的consumer間,實行廣播

kafka中的每一條資料都有一對key和value,存放在磁碟上。一般不會被永久保留,而是在到達一定的數量或者時間後對最早寫入的資料進行刪除。

乙個訊息可以被多個consumer group消費,但只能被同乙個group下的乙個consumer消費。好處是可以同時提供離線和實時處理(離線和實時分屬兩個group,各自消費,互不影響)。

kafka搭建:

kafka啟動命令:

bin/kafka-server-start.sh config/server.properties &
建立topic:

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
檢視topic:

bin/kafka-topics.sh --list --zookeeper localhost:2181
生產訊息:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 

this is a message

this is another message

消費訊息:

#從頭開始消費訊息

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

#從客戶端啟動後消費新到達的訊息:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test

#指定消費者組,從該消費者組上次的偏移量開始消費

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --consumer.config config/consumer.properties

檢視topic的分割槽、副本資訊

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic
kafka架構:

segment中,index和log檔案的對應關係

學習筆記 Kafka

kafka kafka把資料往磁碟上寫,但是在磁碟上存它的讀寫速度比記憶體快,這個依賴於預讀和後寫功能,但是這個預讀和後寫必須是按照順序的方式,若沒有順序的方式優化的話,不存在什麼預讀和後寫。特點 訊息持久化 能落到磁碟 通過o 1 的磁碟資料結構提供資料的持久化 高吞吐量 分布式 擴充套件能力強 ...

Kafka學習筆記

1.1簡介 apache kafka 是分布式發布 訂閱訊息系統 訊息中介軟體 它最初由 linkedin 公司開發,之後成為 apache 專案的一部分。kafka 是一種快速 可擴充套件的 設計內在就是分布式的,分割槽的和可複製的提交日誌服務。apache kafka 與傳統訊息系統相比,有以下...

kafka學習筆記

1.1 kafka的特性 controller在zookeeper註冊watch zookeeper管理kakfabroker集群。所有的kafkabroker節點一起去zookeeper上註冊乙個臨時節點,只有乙個能成功,成功註冊的節點稱之為 kafkabrokercontroller,其餘的稱之...