[英]What is the difference between Kafka Cluster and Kafka Broker?
Kafka cluster
和Kafka broker
的含義相同嗎?
我知道集群有多個代理(這是錯的嗎?)。
但是當我編寫代碼來生成消息時,我發現option
很尷尬。
props.put("bootstrap.servers", "kafka001:9092, kafka002:9092, kafka003:9092");
這是代理地址還是集群地址? 如果這是broker地址,我認為不好,因為當broker計數發生變化時,我們必須修改上面的地址。
(但它似乎是經紀人地址..)
此外,我在亞馬遜的MSK
中看到,我們可以將代理添加到每個AZ
。
這意味着,我們不能有很多經紀人。 (最多三四個?)
他們指導我們應該將這個代理地址寫入 bootstrap.server option as a
,` 分隔列表。
為什么他們不指導我們使用集群地址或ARN
?
Kafka cluster
是一組Kafka brokers
。
使用 Producer API 時,不需要在bootstrap.servers
屬性中提及集群內的所有代理。 bootstrap.servers上的 Producer 配置文檔提供了完整的詳細信息:
用於建立與 Kafka 集群的初始連接的主機/端口對列表。 客戶端將使用所有服務器,無論此處指定哪些服務器進行引導——此列表僅影響用於發現完整服務器集的初始主機。 此列表應采用 host1:port1,host2:port2,.... 的形式。由於這些服務器僅用於初始連接以發現完整的集群成員(可能會動態更改),因此此列表不需要包含完整集服務器數量(但您可能需要多個服務器,以防服務器停機)。
集群中的所有代理共享同一集群中其他代理的元信息。 因此,在bootstrap-servers
屬性中只提及一個代理就足夠了。 但是,如果由於某種原因無法使用一個經紀人,您仍然應該提及不止一個經紀人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.