kafka的主要特點
kafka是分布式發布-訂閱訊息系統。它最初由linkedin公司開發,之後成為apache專案的一部分。kafka是乙個分布式的,可劃分的,冗餘備份的永續性的日誌服務,它主要用於處理活躍的流式資料。
kafka的架構
kafka的整體架構非常簡單,是顯式分布式架構,producer、broker(kafka)和consumer都可以有多個。producer,consumer實現kafka註冊的介面,資料從producer傳送到broker,broker承擔乙個中間快取和分發的作用。broker分發註冊到系統中的consumer。broker的作用類似於快取,即活躍的資料和離線處理系統之間的快取。客戶端和伺服器端的通訊,是基於簡單,高效能,且與程式語言無關的tcp協議。
傳送訊息的流程:
kafka的優秀設計
接下來我們從kafka的吞吐量、負載均衡、訊息拉取、擴充套件性來說一說kafka的優秀設計。
對訊息的處理:
主題分割槽:
負載均衡:
訊息的拉取:
可擴充套件性
kafka的應用場景
接下來,我們和小夥伴一起**一些kafka在實際工作中的一些重要應用場景,幫助小夥伴在以後的學習和工作裡能夠合理的運用kafka中介軟體服務於業務和架構設計。
行為跟蹤
元資訊監控
日誌收集
流處理
事件源
永續性日誌(commit log)
Kafka的應用場景
1 建立實時的資料管道,以可靠地在系統或應用程式之間獲取資料 2 構建實時流應用程式,以轉換或響應資料流 如圖,可以看到 1 producers 可以有很多的應用程式,將訊息資料放到kafka的集群中。2 consumers 可以有很多的應用程式,將訊息資料從kafka集群中拉取出來。3 conne...
Kafka理論概述和應用場景
kafka是一種高吞吐量的分布式發布訂閱訊息系統,它可以處理消費者規模的 中的所有動作流資料。簡單地說,kafka就相比是乙個郵箱,生產者是傳送郵件的人,消費者是接收郵件的人,kafka就是用來存東西的,只不過它提供了一些處理郵件的機制。下面做進一步說明 broker即kafka程式,kafka程式...
kafka筆記N0 4Kafka應用場景
訊息 kafka更好的替換傳統的訊息系統。kafka有更好的吞吐量,內建分割槽,副本和故障轉移。活動追蹤 使用者活動的追蹤,的活動 網頁瀏覽,搜尋或其他使用者的操作資訊 發布到不同的話題中心,這些訊息可實時處理,實時監測,也可載入到hadoop或離線處理倉庫。指標 kafka也常常用於檢測資料。分布...