使用 Kafka Java client
Java™ Kafka API 範例是以 Java撰寫的範例生產者和消費者,它直接使用 Kafka API。 您可以在本端執行此範例,或是在 IBM Cloud® 執行。
為了取得 Java 用戶端的最佳效能,建議您使用 2.6.0版或更新版本。 如需相關資訊,請參閱 關於 Java Kafka 呼叫的已知限制。
範例程式碼位於 event-streams-samples GitHub 專案。 雖然範例使用 Kafka API 來傳送及接收訊息,範例會使用 Event Streams 管理 API 來建立與它傳送及接收訊息的主題。
如需設定及執行範例的相關資訊,請參閱 README.md。
如需如何執行範例的詳細逐步演練,請參閱開始使用 Event Streams。
如何使用、下載及執行 Liberty for Java 範例
IBM® Liberty for Java™ for IBM Cloud® 範例實作部署至 Liberty 執行時期的簡式應用程式。 應用程式使用 Event Streams 的 Kafka API 來生產及取用訊息。 應用程式也會提供 Web 前端,您可以用來進行管理。
您可以在 event-streams-samples GitHub 專案中找到範例程式碼。
使用 sasl.jaas.config 內容
如果您使用位於 0.10.2.1 或更新版本的 Kafka 用戶端,則可以使用 sasl.jaas.config 內容進行用戶端配置,而不是使用 JAAS 檔案。 若要連接至 Event Streams,請設定 sasl.jaas.config,如下列範例所示:
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
username="USERNAME" \
password="PASSWORD";</code>
USERNAME 和 PASSWORD 是來自 IBM Cloud中 Event Streams 服務認證 標籤的值。
如果您使用 sasl.jaas.config,在相同 JVM 中執行的用戶端可以使用不同的認證。 如需相關資訊,請參閱 配置 Kafka 用戶端。
若為較早的 Kafka 用戶端,您必須使用 JAAS 配置檔來指定認證。 此機制較不方便,因此請改用 sasl.jaas.config 內容。
將 Kafka 用戶端從 0.9.X 版或 0.10.X 版移轉至更新的用戶端版本
如果您使用 Java 用戶端,則可以使用公開可用的 Kafka 用戶端 0.10 版或更新版本。
建議您從 0.9.X 至最新版本。 您可以從 https://kafka.apache.org/downloads下載 Kafka 用戶端。
將 Kafka 用戶端移轉至 0.10.2.X 或更新版本
從 0.10.2版開始,您可以直接在用戶端內容中配置 SASL 鑑別,而不使用 JAAS 檔。 這項簡化可讓您使用不同的認證集,在相同 JVM 中執行多個用戶端,但 JAAS 檔無法這樣做。
請完成下列步驟:
-
刪除 JAAS 檔案。 也不再需要 JVM 內容
java.security.auth.login.config=<PATH TO JAAS>。 -
將下列內容新增至用戶端的內容:
sasl.mechanism=PLAIN sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="USERNAME" password="PASSWORD";USERNAME和PASSWORD是來自 IBM Cloud中 Event Streams 服務認證 標籤的值。