0
我從this question得到了這個疑問。爲什麼我們需要在Apache Kafka中指定Serializer?
當我不使用Kafka Streams時,爲什麼在創建ZkClient時需要使用Serializer?
我從this question得到了這個疑問。爲什麼我們需要在Apache Kafka中指定Serializer?
當我不使用Kafka Streams時,爲什麼在創建ZkClient時需要使用Serializer?
卡夫卡havily使用zookeeper存儲元數據(主題)。對於該庫使用com.101tec :: zkClient。根據源代碼ZkClient,它需要ZkSerializer用於序列化/反序列化從zookeeper發送/返回的數據。它內部的Kafka實現了ZkSerializer:ZKStringSerializer(在zkUtils中定義)。
但是,對於通常與kafka(生產/消費)交互,您不需要創建ZkClient。只需要'行政'工作。
感謝您的回答。請閱讀我發佈的鏈接中最受歡迎的評論。如果我們在創建主題時沒有指定序列化器,則它實際上並不是由Kafka創建的。這是什麼意思?這讓我困惑。 –
@GopsAB我會假設它連接的方式是如何將您的主題名稱序列化並寫入zookeeper。當你顯示主題列表時 - 它只是zookeeper中所有節點的列表。雖然kafka可以將其視爲無效的主題名稱 – Natalia