資料佇列 kafka 1

2021-10-10 05:34:16 字數 1140 閱讀 6887

kafka對訊息儲存時根據topic進行歸類,

傳送訊息者稱為productor,訊息接受者稱為consumer,kafka集群有多個kafka例項

每個例項(server)稱為broker.

kafka依賴於zookeeper集群(儲存資訊,系統的可用性),zookeeper所在結點要開網路監控

為什麼需要訊息佇列

解耦冗餘

zookeepr儲存的是

節點狀態資訊,消費者當前消費訊息的狀態資訊(決定誰是leader,判斷消費到**了)

broker是結點(相當於程序、服務)實現負載均衡

生產者傳送訊息

給指定topic(有很多分割槽partition,分區分主從關係,分割槽是最小單元)

分割槽有:leader 負責通訊     follower 同步leader資料的作用   乙個leader崩了,其中乙個follower變為leader 高可用

kafka冗餘機制()

同一分割槽訊息是有序的,不同分割槽訊息不一定有序

消費者消費訊息的最小單元是最小分割槽,通過分割槽來消費的

消費者組消費訊息:

同一時間只能是乙個consumer消費者消費訊息,乙個組裡consumer消費者消費訊息是不會重複的(乙個分割槽對不同組進行消費是可以重複的),consumer消費者與乙個分割槽建立關係後就要消費完

消費者者消費多個分割槽時不一定有序(如何保證有序:1. 指定分割槽號  2.指定分割槽規則,使有序的在同一分割槽,也就是對key處理)

kafka可以說是半持久化儲存的(訊息是流失的,資料處理系統,不是資料庫)kafka預設儲存7天,儲存在記憶體中也就是磁碟裡

分布式模型:

在同乙個kafka集群中:擁有同乙個topic——卻有不同分割槽,不同的資料——不同的分割槽 (kafka中基本所有角色都是可分布式

kafka 1 高效持久化日誌和加快資料傳輸

順序讀寫,磁碟會預讀,預讀即在讀取的起始位址連續讀取多個頁面,主要時間花費在了傳輸時間。記憶體對映。完成對映之後你對物理記憶體的操作會被同步到硬碟上 作業系統在適當的時候 通過 mmap,程序像讀寫硬碟一樣讀寫記憶體 當然是虛擬機器記憶體 也不必關心記憶體的大。省去了使用者空間到核心空間複製的開銷。...

訊息佇列 訊息佇列 kafka

kafka是乙個分布式的基於發布 訂閱模式的訊息佇列,主要用於大資料實時處理領域。要理解kafka首先要有分布式的概念,要有訊息佇列的概念。分布式系統最大的優勢就是解耦和削峰,這種情況下,a系統生成了乙個訊息,b系統非同步獲取,那麼就需要乙個存放訊息的訊息佇列 mq 相比較傳統的訊息佇列,訊息被消費...

訊息佇列 Kafka學習

kafka是乙個分布式的訊息佇列,學習見apache kafka文件,中文翻譯見kafka分享,乙個簡單的入門例子見kafka 入門例項。本文只針對自己感興趣的點記錄下。producer consumer 訊息的生成者和使用者。broker kafka server充當broker角色,起到訊息佇列...