kafka使用總結

2021-10-11 17:57:02 字數 1846 閱讀 9974

系統新增資料需要通過kafka平台進行推送,第三方消費訊息

1.伺服器端需要安裝jdk, kafka 2.6.0(使用kafka自帶zookeeper),jdk配置對應的環境變數,kafka使用預設配置;

2.啟動順序為:zookeeper啟動之後 啟動kafka;

關閉順序為:kafka關閉之後 關閉zookeeper;

3.後台zookeeper啟動:(到kafka安裝目錄)

bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
4.後台kafka啟動:(到kafka安裝目錄)

bin/kafka-server-start.sh -daemon config/server.properties
5.建立topic

bin/kafka-topics.sh --create --zookeeper localhost:2181 --topic name --partitions 1 --replication-factor 1
6.檢視該topic的狀態

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic name
7.需要測試的話,可以在kafka上新開連線視窗 建立生產者和消費者

生產者:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic name
消費者:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic name --from-beginning
靜態初始化生產者

// topic名稱

private

static

final string topic =

"oamessage"

;// broker list位址

private

static

final string broker_list =

"10.31.245.5:9092"

;// kafka 生產者

private

static kafkaproducer

producer = null;

// 初始化生產者

static

private

static properties initconfig()

在具體方法中使用生產者推送訊息

new

thread((

)->).

start()

;

報錯 error connecting to node 0 at *********:9092:

原因分析:不能解析*********主機名

kafka連線原理:首先連線 127.0.0.1:9092

再次連線返回的是 host.name = *********

最後持續連線的是advertised.host.name = *********

解決辦法:新增hosts檔案網域名稱解析

hosts檔案增加

127.0.0.1  *********
用cmd ping一下*********試試 如果可以ping通即可

kafka使用總結

列出所有topics bin kafka topics.sh list zookeeper 10.19.167.11 2181,10.19.167.12 2181,10.19.167.14 2181 bin kafka topics.sh list zookeeper 10.19.167.21 21...

Ubuntu下kafka使用總結

安裝執行環境 apt get install openjdk 8 jre pip3 install kafka 啟動kafka bin zookeeper server start.sh config zookeeper.properties bin kafka server start.sh co...

kafka知識總結

1 kafka是什麼 類jms訊息佇列,結合jms中的兩種模式,可以有多個消費者主動拉取資料,在jms中只有點對點模式才有消費者主動拉取資料。kafka是乙個生產 消費模型。producer 生產者,只負責資料生產,生產者的 可以整合到任務系統中。資料的分發策略由producer決定,預設是defa...