Utilizzo del client Java Kafka
L'esempio API Kafka Java™ è un produttore e consumatore di esempio scritto in Java, che utilizza direttamente l'API Kafka. Puoi eseguire questo esempio in locale o in IBM Cloud®.
Per prestazioni ottimali con il client Java, si consiglia di utilizzare la versione 2.6.0o successiva. Per ulteriori informazioni, consulta known restriction about Java Kafka calls.
Il codice di esempio si trova nel progetto GitHub event - streams - samples. Anche se l'esempio utilizza l'API Kafka per inviare e ricevere messaggi, l'esempio utilizza l'API di amministrazione Event Streams per creare l'argomento a cui invia i messaggi e da cui riceve i messaggi.
Per ulteriori informazioni sulla configurazione e sull'esecuzione dell'esempio, vedi README.md.
Per una procedura dettagliata su come eseguire l'esempio, vedi Introduzione a Event Streams.
Come utilizzare, scaricare ed eseguire l'esempio Liberty for Java
L'esempio IBM® Liberty for Java™ for IBM Cloud® implementa una semplice applicazione distribuita nel runtime Liberty. L'applicazione utilizza l'API Kafka per Event Streams per produrre e consumare messaggi. L'applicazione offre anche un frontend web che puoi utilizzare per le attività di amministrazione.
Puoi trovare il codice di esempio nel progetto GitHub event - streams - samples.
Utilizzo della proprietà sasl.jaas.config
Se utilizzi un client Kafka all'indirizzo 0.10.2.1 o successivo, puoi utilizzare la proprietà sasl.jaas.config
per la configurazione del client invece di un file JAAS. Per connetterti a Event Streams, imposta sasl.jaas.config
come nel seguente esempio:
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
username="USERNAME" \
password="PASSWORD";</code>
USERNAME
e PASSWORD
sono i valori dalla scheda Service Credentials di Event Streams in IBM Cloud.
Se si utilizza sasl.jaas.config
, i client che vengono eseguiti nella stessa JVM possono utilizzare credenziali differenti. Per ulteriori informazioni, vedi Configurazione dei client Kafka.
Per un precedente client Kafka, devi utilizzare un file di configurazione JAAS per specificare le credenziali. Questo meccanismo è meno conveniente, quindi utilizzare la proprietà sasl.jaas.config
.
Migrazione di un client Kafka dalla versione 0.9.X o 0.10.X a versioni client successive
Se utilizzi i client Java, puoi utilizzare i client Kafka disponibili pubblicamente versione 0.10 o successiva.
Si consiglia di passare dalla versione 0.9.X alla versione più recente. Puoi scaricare un client Kafka da https://kafka.apache.org/downloads.
Migrazione di un client Kafka alla versione 0.10.2.X o versioni successive
Dalla versione 0.10.2, è possibile configurare l'autenticazione SASL direttamente nelle proprietà del client invece di utilizzare un file JAAS. Questa semplificazione consente di eseguire più client nella stessa JVM utilizzando diverse serie di credenziali, il che non è possibile con un file JAAS.
Completa i seguenti passi:
-
Elimina il file JAAS. Anche la proprietà JVM
java.security.auth.login.config=<PATH TO JAAS>
non è più richiesta. -
Aggiungi quanto segue alle proprietà del client:
sasl.mechanism=PLAIN sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="USERNAME" password="PASSWORD";
USERNAME
ePASSWORD
sono i valori dalla scheda Service Credentials di Event Streams in IBM Cloud.