【史上最全的kafka知識解析 kafka作用是什么】
什么是Kafka
Kafka基于Scala和Java語言開發 , 設計中大量使用了批量處理和異步的思想 , 最高可以每秒處理百萬級別的消息 , 是用于構建實時數據管道和流的應用程序 。
一文快速了解Kafka
Kafka的應用場景
Kafka是一個分布式流式處理平臺 。流平臺具有三個關鍵功能:
消息隊列:發布和訂閱消息流 , 這個功能類似于消息隊列 , 這也是Kafka被歸類為消息隊列的原因 。
容錯的持久方式存儲記錄消息流:Kafka會把消息持久化到磁盤 , 有效避免消息丟失的風險 。
流式處理平臺:在消息發布的時候進行處理 , Kafka提供了一個完整的流式處理類庫 。
Kafka主要有兩大應用場景:
消息隊列:建立實時流數據管道 , 可靠地在系統或應用程序之間獲取數據 。
數據處理:構建實時的流數據處理程序來轉換或處理數據流 。
一文快速了解Kafka
注: Kafka在2.8預覽版中 , 采用Raft元數據模式 , 取消了對Zookeeper的依賴 。
Kafka的版本里程碑
版本號 備注
0.8 引入了副本機制 , 成為了一個真正意義上完備的分布式高可靠消息隊列解決方案
0.8.2 新版本 Producer API , 即需要指定 Broker 地址的 Producer
0.9 增加了基礎的安全認證 / 權限 , Java 重寫了新版本消費者 API
0.10 引入了 Kafka Streams
0.11 提供冪等性 Producer API 以及事務(Transaction) API , 對 Kafka 消息格式做了重構 。
1.0 Kafka Streams 的各種改進
2.0 Kafka Streams 的各種改進
Kafka的優勢
高吞吐、低延時:這是 Kafka 顯著的特點 , Kafka 能夠達到百萬級的消息吞吐量 , 延遲可達毫秒級 。
持久化存儲:Kafka 的消息最終持久化保存在磁盤之上 , 提供了順序讀寫以保證性能 , 并且通過 Kafka 的副本機制提高了數據可靠性 。
分布式可擴展:Kafka的數據是分布式存儲在不同broker節點的 , 以topic組織數據并且按Partition進行分布式存儲 , 整體的擴展性都非常好 。
高容錯性:集群中任意一個 broker 節點宕機 , Kafka 仍能對外提供服務 。
Kafka基本結構
Kafka具有四個核心API:
Producer API: 發布消息到1個或多個topic(主題)中 。
Co
猜你喜歡
- 奢華高貴的洋氣的寵物狗名字 奢華高貴的洋氣的寵物狗名字推薦
- 關于小狗的作文 關于小狗的作文范文
- 第五人格各個角色的人格介紹 第五人格各個角色的人格詳細介紹
- 蒸雞蛋糕的做法 來動手操作吧
- 四色花蛋羹 四色花蛋羹的做法
- 反義詞是什么 反義詞的相關知識
- 洗直和拉直的區別 洗直和拉直有什么區別
- 韭菜蓮花的養殖方法 韭菜蓮花如何養殖方法
- 午門在故宮什么位置 故宮的午門在哪里
- 洗豬腸子的方法 清洗豬腸的技巧
