1. 程式人生 > >Kafka應用實戰——Kafka安裝及簡單使用

Kafka應用實戰——Kafka安裝及簡單使用

Ingredient:

1 Kafka簡介

Kafka是什麼呢?Kafka官網說自己是“A distributed streaming platform”,也就是一個“分散式流媒體平臺”,其實就是一個訊息佇列平臺。訊息之間是一個“public & subscribe”的關係,生產者建立訊息,消費者訂閱訊息。

其實要想搞清楚Kafka是什麼,有什麼好處,可以參考知乎上訊息佇列的使用場景是怎樣的裡面ScienJus做出的回答,把訊息佇列比喻成書架,很形象。

2 JDK下載及環境配置

3 Zookeeper下載及安裝

Kafka執行需要Zookeeper的支援,Zookeeper下載及安裝可參考筆者另一篇文章

Zookeeper簡介及應用實戰

4 Kafka下載及安裝

tar -zxvf kafka_2.11-2.0.0.tgz

解壓縮完之後檔案完整的路徑為:

/opt/kafka/kafka_2.11-2.0.0

5 啟動

5.1 啟動Zookeeper

進入Zookeeper安裝目錄:

cd /opt/zookeeper/zookeeper-3.4.12/

啟動Zookeeper:

./bin/zkServer.sh  start

5.2 啟動Kafka

進入Kafka安裝目錄:

cd /opt/kafka/kafka_2.11-2.0.0

啟動Kafka:

./bin/kafka-server-start.sh config/server.properties

6 模擬訊息互動測試

Kafka官網的Quick Start給出了一個快速上手Kafka試驗的例項,可以參考。

6.1 建立topic

./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic my_first_topic

6.2 檢視topic

./bin/kafka-topics.sh --list --zookeeper localhost:2181

6.3 傳送、接受訊息

啟動2個終端(t1,t2)連線到伺服器,t1作為productor傳送訊息,t2作為consumer接收訊息。

  • 1.在t1中輸入:
./bin/kafka-console-product.sh --broker-list localhost:9092 --topic my_first_topic
This is a message
This is another message

只是啟動之前建立的“my_first_topic”,傾向其中輸入了一些文字。

  • 2.在t2中輸入:
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic my_first_topic --from-beginning
This is a message
This is another message

這是在consumer中獲取到了輸入的資訊,這裡注意有的Kafka版本的命令中包含:

--zookeeper localhost:2181

現在這個版本已經沒有這個引數了,而是換成了:

--bootstrap-server localhost:9092

6.4 關閉producer、consumer程序

在t1、t2終端執行:

Ctrl-C

即可。

7 參考