Windows環境搭建kafka
阿新 • • 發佈:2018-12-01
一、kafka簡介
1、Kafka是一種分散式的,基於釋出/訂閱的訊息系統。主要設計目標如下:
- 以時間複雜度為O(1)的方式提供訊息持久化能力,即使對TB級以上資料也能保證常數時間的訪問效能
- 高吞吐率。即使在非常廉價的商用機器上也能做到單機支援每秒100K條訊息的傳輸
- 支援Kafka Server間的訊息分割槽,及分散式消費,同時保證每個partition內的訊息順序傳輸
- 支援離線資料處理和實時資料處理
2、使用Kafka需要理解的一些概念
- Broker:Kafka叢集包含一個或多個伺服器,這種伺服器被稱為broker
- Topic:每條釋出到Kafka叢集的訊息都有一個類別,這個類別被稱為topic。(物理上不同topic的訊息分開儲存,邏輯上一個topic的訊息雖然保存於一個或多個broker上但使用者只需指定訊息的topic即可生產或消費資料而不必關心資料存於何處)
- Partition:parition是物理上的概念,每個topic包含一個或多個partition,建立topic時可指定parition數量。每個partition對應於一個資料夾,該資料夾下儲存該partition的資料和索引檔案
- Producer:負責釋出訊息到Kafka broker
- Consumer:消費訊息。每個consumer屬於一個特定的consumer group(可為每個consumer指定group name,若不指定group name則屬於預設的group)。使用consumer high level API時,同一topic的一條訊息只能被同一個consumer group內的一個consumer消費,但多個consumer group可同時消費這一訊息
二、安裝Kafka
1、安裝JDK環境
2、下載Kafka安裝包,下載地址:http://kafka.apache.org/downloads,本例的版本是0.9.0.1,解壓壓縮包後如下:
(1)bin目錄下存放的是程式執行時使用的指令碼檔案,bin的目錄下存放的是 Linux 平臺使用的 .sh 的shell指令碼和一個windows資料夾,windows資料夾裡放的是windows平臺執行kafka的 .bat 檔案。
(2)config目錄下存放的是一些程式執行的配置檔案
(3).libs目錄是打包好的jar包,這個版本自帶了zookeeper的jar包,所以不需要再安裝zookeeper了
三、使用Kafka
1、啟動zoopkeeper
(1)開啟Windows命令列
(2) 切換到Kafka的安裝目錄
(3)輸入如下命令:
bin\windows\zookeeper-server-start.bat config\zookeeper.properties
啟動後如下圖:
2、啟動Kafka服務
(1)再開啟一個命令列視窗, 切換到Kafka的安裝目錄
(2)輸入如下命令:
bin\windows\kafka-server-start.bat config\server.properties
kafka啟動後,如下圖:
3、 建立一個主題,輸入如下命令:
bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic adienTest
如下圖:
可以使用如下命令檢視建立的主題列表:
bin\windows\kafka-topics.bat --list --zookeeper localhost:2181
如下圖:
4、啟動生產者
(1)再開啟一個命令列視窗, 切換到Kafka的安裝目錄
(2)輸入如下命令:
bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic adienTest
5、啟動消費者
(1)再開啟一個命令列視窗, 切換到Kafka的安裝目錄
(2)輸入如下命令:
bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic adienTest --from-beginning
6、此時可以在生產者的命令列視窗輸入資訊,隨後就能在消費者的命令列視窗看到消費了這條資訊,如下圖: