什麼是kafka?Kafka如何使用?(大數據-卡夫卡)

什麼是Kafka
官網介紹:
 - ApacheKafka®是一個分佈式流媒體平臺。這到底是什麼意思呢?
我們認爲流媒體平臺具有三個關鍵功能:
 1. 它可以讓你發佈和訂閱記錄流。在這方面,它類似於消​​息隊列或企業消息傳遞系統。
 2. 它允許您以容錯方式存儲記錄流。
 3. 它可以讓您在發生記錄時處理記錄流。
幾個概念:
  1. Kafka作爲一個或多個服務器上的集羣運行。
  2. Kafka集羣以稱爲主題的類別存儲記錄流。
  3. 每個記錄由一個鍵,一個值和一個時間戳組成。
詳細介紹 :######

這篇博客寫的很詳細

下載安裝
官網下載地址:http://mirror.bit.edu.cn/apache/kafka/1.0.0/kafka_2.11-1.0.0.tgz
解壓:tar zxf kafka_2.11-1.0.0
啓動Zookeeper:測試可以採用kafka自帶zookeeper
	./bin/zookeeper-server-start.sh config/zookeeper.properties 
啓動kafka:

./bin/kafka-server-start.sh config/server.properties
在默認的 kafka_2.11-1.0.0/config 目錄下的server.properties文件中
默認端口爲9092

操作kafka:
創建名爲“test”的topic

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

創建生產者(生產消息):

./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
這裏寫圖片描述

創建消費者(消費消息):
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

這裏寫圖片描述

kafka集羣
創建配置文件
cp config/server.properties config/server2.properties
cp config/server.properties config/server3.properties
設置以下屬性
config/server2.properties:
    broker.id=1
    listeners=PLAINTEXT://:9093
    log.dir=/tmp/kafka-logs-1
 
config/server3.properties:
    broker.id=2
    listeners=PLAINTEXT://:9094
    log.dir=/tmp/kafka-logs-2
啓動
./bin/kafka-server-start.sh config/server2.properties &
.....
./bin/kafka-server-start.sh config/server3.properties &
創建topic
./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic test2
查看topic
./bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test2

Topic:test2	PartitionCount:1	ReplicationFactor:3	Configs:
	Topic: zhh-replicated-topic	Partition: 0	Leader: 2	Replicas: 2,0,1	Isr: 2,0,1

第一行表示彙總信息. 有1個分區, 3份備份 第二行表示每個分區的信息,對分區0,領導節點id是2, 備份到2,0,1.
leader 表示負責某分區全部讀寫的節點. 每個分區都會有隨機選擇的leader.
Replicas 表示需要複製到的節點, 不管是否活着.
Isr 表示(“in-sync” replicas), 正在同步的備份, 表示可用的活着的節點

消息測試
  • 創建生產者
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test2
  • 創建消費者
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test2 --from-beginning
問題檢測##
  • 節點崩潰
ps aux | grep server.properties    #查看節點(73370)是否已啓用
kill -9 73370					   #殺死此節點
  • zookeeper
    zookeeper打開後要打開新的連接操作kafka。

更多文章:點擊這裏

掃碼關注公衆號《後端開發ipoo》。一起交流分享,歡迎投稿。

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章