Kafka簡介
Kafka 起初是由 Linkedin 公司採用 Scala 語言開發的 個多分區、多副本且基於 ZooKeeper協調的分布式消息系統,現己被捐獻給 Apache 基金會 目前 Kafka 已經定位為一個分布式流式處理平台,它以高吞吐、可持久化、可水平擴展、支持流數據處理等多種特性而被廣泛使用。目前越來越多的開源分布式處理系統如 loudera Storm Spark Flink 等都支持與 Kafka 集成。
Kafka 之所以受到越來越多的青睞,與它所「扮 」的 大角色是分不開的:
- 消息系統: kafka 和傳統的消息系統(也稱作消息中間件〉都具備系統解稿、冗餘存儲、流量 峰、緩衝、異步通信、擴展性、 可恢復性等功能。與此同時, Kafka還提供了大多數消息系統難以實現的消息順序性保障及回溯消費的功能。
- 存儲系統: Kafka 把消息持久化到磁碟,相比於其他基於內存存儲的系統而言,有效地降低了數據丟失的風險 也正是得益於 Kafka 的消息持久化功能和多副本機制,我們可以把 Kafka 作為長期的數據存儲系統來使用,只需要把對應的數據保留策略設置為「永久」或啟用主題的日誌壓縮功能即可。
- 流式處理平台: Kafka 不僅為每個流行的流式處理框架提供了可靠的數據來源,還提供了一個完整的流式處理類庫,比如窗口、連接、變換和聚合等各類操作。
深入理解Kafka:核心設計與實踐原理
需要《深入理解Kafka:核心設計與實踐原理》PDF版的老鐵請轉發文章關注我,然後私信回復「Kafka」即可獲得免費領取方式。
初識Kafka
生產者
消費者
主題與分區
日誌存儲
深入服務端
深入客戶端
可靠性探究
Kafka應用
Kafka監控
高級應用
Kafka與Spark的集成
需要《深入理解Kafka:核心設計與實踐原理》PDF版的老鐵請轉發文章關注我,然後私信回復「Kafka」即可獲得免費領取方式。