简单理解kafka---入门
生活随笔
收集整理的這篇文章主要介紹了
简单理解kafka---入门
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介:Kafka是一種高吞吐量的分布式發布訂閱消息系統,可以提供消息的持久化,即使數以TB的消息存儲也能夠保持長時間的穩定性能。同時Kafka也支持Hadoop并行數據加載。該項目的目標是為處理實時數據提供一個統一,高通量,低等待的平臺。 kafka中幾個基本的術語:
- Topic(主題)---Kafka按照分類對信息源進行維護。實際應用中一個業務一個topic
- Producer(生產者)---把發送消息到topic中的進程叫做生產者
- Consumer(消費者)---把從topic中訂閱消息的進程叫做消費者
- Broker(Kafka服務)---Kafka集群中的每個服務叫做broker
?
服務端和客戶端的通信是常見的TCP協議。 kafka是一個基于分布式的消息發布-訂閱系統,它被設計成快速,可擴展的,持久的。與其他消息發布-訂閱類似。Kafka在主題中保存消息的信息。生產者向主題寫入數據,消費者從主題讀取數據。由于Kafka的特性是支持分布式的,同時也是基于分布式的,所以主題也是可以在多個節點上被分區和覆蓋的。 信息是一個字節數組,可以在這些字節數組中存儲任何對象,支持的數據格式包括string,JSON,Avro。Kafka通過給每個消息綁定一個鍵值的方式來保證生產者可以把所有的消息發送到指定位置。屬于某一個消費者群組的消費者訂閱了一個主題,通過該訂閱,消費者可以跨節點的接收所有與該主題相關的消息,每一個消息只會發送給群組的每一個消費者,所有擁有相同鍵值消息都會被確保發給這一個消費者。 Kafka設計中將每一個主題分區當做一個具有順序排列的日志。同處于一個分區中的消息都被設置了一個唯一的偏移量。Kafka只會保持跟蹤未讀消息一旦消息被置為已讀,Kafka就不回去管理它。Kafka的生產者負責在消息隊列中對生產出來的消息保證一定時間的占有,消費者負責追蹤每一個主題(可以理解為一個日志通道)的消息并及時獲取他們。基于這樣的設計,Kafka可以在消息隊列中保存大量的開銷很小的數據,并且支持大量的消費者訂閱。 <<分布式系統常用技術及案例分析>>轉載于:https://www.cnblogs.com/shangdongbin/p/7729138.html
總結
以上是生活随笔為你收集整理的简单理解kafka---入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 洛谷 1195 口袋的天空
- 下一篇: 《从paxos到zookeeper》学习