溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Kafka中容易混淆的概念有哪些

發(fā)布時間:2021-12-08 15:38:53 來源:億速云 閱讀:153 作者:小新 欄目:大數(shù)據(jù)

這篇文章主要介紹Kafka中容易混淆的概念有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!


broker-list

broker指的是kafka的服務端,可以是一個服務器也可以是一個集群。producer和consumer都相當于這個服務端的客戶端。

broker-list指定集群中的一個或者多個服務器,一般我們再使用console producer的時候,這個參數(shù)是必備參數(shù),另外一個必備的參數(shù)是topic,如下示例:

C:\kafka\kafka_2.12-1.1.1
λ .\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test20190713
>this is a test
>
 

本地主機如果要模擬多個broker,方法是復制多個server.properties,然后修改里面的端口, broker.id等配置模擬多個broker集群。

比如模擬三個broker的情況,首先把config 目錄下的 server.properties 復制兩份,分別命名為 server-1.properties 和 server-2.properties,然后修改這兩個文件的下列屬性,

server-1.properties:

broker.id=1
listeners=PLAINTEXT://:9093
log.dirs=C:/kafka/broker1
 

server-2.properties:

broker.id=2
listeners=PLAINTEXT://:9094
log.dirs=C:/kafka/broker2
 

broker.id 用來唯一標識每一個 broker,每個broker都有一個唯一的id值用來區(qū)分彼此。Kafka在啟動時會在zookeeper中/brokers/ids路徑下創(chuàng)建一個與當前broker的id為名稱的虛節(jié)點,Kafka的健康狀態(tài)檢查就依賴于此節(jié)點。

我們可以打開一個zk的客戶端,通過ls命令來查看下這個路徑下的內容:

λ .\bin\windows\zookeeper-shell.bat localhost:2181
Connecting to localhost:2181
Welcome to ZooKeeper!
JLine support is disabled
ls
WATCHER::

WatchedEvent state:SyncConnected type:None path:null

ls /brokers/ids
[0]
 

可以看到我們默認啟動的這個broker.id為0的節(jié)點。

 

bootstrap-servers vs zookeeper

bootstrap-servers指的是目標集群的服務器地址,這個和broker-list功能是一樣的,只不過我們在console producer要求用后者。

以前我們使用console consumer測試消息收發(fā)時會這樣寫:

C:\kafka\kafka_2.12-1.1.1
λ .\bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic test20190713
Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper].
 

這樣可以接收到生產(chǎn)者控制臺發(fā)送的消息。

現(xiàn)在我們也可以這樣寫,

C:\kafka\kafka_2.12-1.1.1 λ .\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test20190713

你可以自己測試下,也是可以收到消息的。

前者是老版本的用法,0.8以前的kafka,消費的進度(offset)是寫在zk中的,所以consumer需要知道zk的地址。后來的版本都統(tǒng)一由broker管理,所以就用bootstrap-server了。

Kafka中容易混淆的概念有哪些  
Kafka中容易混淆的概念有哪些

以上是“Kafka中容易混淆的概念有哪些”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI