Kafka應用實戰——Kafka安裝及簡單使用
阿新 • • 發佈:2019-02-20
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
即可。