Apache-Kafka簡介

您可能感興趣的文章:分佈式

Apache-Kafka簡介設計

Apache Kafka安裝和使用3d

Apache-Kafka核心概念日誌

Apache-Kafka核心組件和流程-協調器cdn

Apache-Kafka核心組件和流程(副本管理器)blog

Apache-Kafka 核心組件和流程-控制器隊列

Apache-Kafka核心組件和流程-日誌管理器開發

....文檔

kafka的定位get

提到kafka,不太熟悉或者稍有接觸的開發人員,第一想法可能會以爲它是一個消息系統。其實Kafka的定位並不止於此。

Kafka官方文檔介紹說,Apache Kafka是一個分佈式流平臺,並給出了以下解釋:

流平臺有三個關鍵的能力:

  • 發佈訂閱記錄流,和消息隊列或者企業新消息系統相似。
  • 以可容錯、持久的方式保存記錄流
  • 當記錄流產生時就進行處理

Kafka一般用於應用中的兩種廣播類型:

  • 在系統和應用間創建實時的數據管道,可以可信賴的獲取數據。
  • 創建實時的流應用,能夠處理或者響應數據流。

因而可知,kafka給自身的定位並不僅是一個消息系統,而是經過發佈訂閱消息這種機制實現了流平臺。

其實無論kafka給本身的定位如何,他都逃脫不了發佈訂閱消息的底層機制。本文講解的重點,也是kafka發佈訂閱消息的特性。

Kafka和大多數消息系統同樣,搭建好kafka集羣后,生產者向特定的topic生產消息,而消費者經過訂閱topic,可以準實時的拉取到該topic新消息,進行消費。以下圖:



Kafka特性

kafka和有如下主要的特性:

  • 消息持久化
  • 高吞吐量
  • 可擴展性

尤爲是高吞吐量,是他的最大賣點。kafka之因此可以實現高吞吐量,是基於他自身優良的設計,及集羣的可擴展性。後面章節會展開來分析。

Kafka應用場景

  • 消息系統
  • 日誌系統
  • 流處理


相關文章
相關標籤/搜索