使用 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>

USERNAMEPASSWORD 是來自 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 檔無法這樣做。

請完成下列步驟:

  1. 刪除 JAAS 檔案。 也不再需要 JVM 內容 java.security.auth.login.config=<PATH TO JAAS>

  2. 將下列內容新增至用戶端的內容:

    sasl.mechanism=PLAIN
    sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="USERNAME" password="PASSWORD";
    

    USERNAMEPASSWORD 是來自 IBM Cloud中 Event Streams 服務認證 標籤的值。