第4章 Kafka クラスターに接続するためのクライアントアプリケーションの設定


Kafka クラスターに接続するには、ブローカーを識別して接続を有効にする最小限のプロパティーのセットを使用してクライアントアプリケーションを設定する必要があります。さらに、メッセージを Kafka で使用されるバイト配列形式に変換したり、その形式からメッセージを変換したりするためのシリアライザー/デシリアライザーメカニズムを追加する必要があります。コンシューマークライアントを開発する場合は、最初の接続を Kafka クラスターに追加することから始めます。これは、使用可能なすべてのブローカーを検出するために使用されます。接続を確立したら、Kafka トピックからのメッセージの消費、および Kafka トピックへのメッセージの生成を開始できます。

必須ではありませんが、ログとメトリックの収集でクライアントを識別できるように、一意のクライアント ID を使用することを推奨します。

プロパティーファイルでプロパティーを設定できます。プロパティーファイルを使用すると、コードを再コンパイルせずに設定を変更できます。

たとえば、次のコードを使用して Java クライアントにプロパティーをロードできます。

設定プロパティーをクライアントにロードする

Copy to Clipboard Toggle word wrap
Properties props = new Properties();
try (InputStream propStream = Files.newInputStream(Paths.get(filename))) {
    props.load(propStream);
}

設定オブジェクトのコードにプロパティーを直接追加することもできます。たとえば、Java クライアントアプリケーションに setProperty() メソッドを使用できます。プロパティーを直接追加することは、設定するプロパティーの数が少ない場合に便利なオプションです。

4.1. 基本的なプロデューサークライアントの設定

プロデューサークライアントを開発するときは、次のように設定します。

  • Kafka クラスターへの接続
  • メッセージキーを Kafka ブローカーのバイトに変換するシリアライザー
  • メッセージ値を Kafka ブローカーのバイトに変換するシリアライザー

圧縮されたメッセージを送信および保存する場合は、圧縮タイプを追加することもできます。

基本的なプロデューサークライアント設定プロパティー

Copy to Clipboard Toggle word wrap
client.id = my-producer-id 
1

bootstrap.servers = my-cluster-kafka-bootstrap:9092 
2

key.serializer = org.apache.kafka.common.serialization.StringSerializer 
3

value.serializer = org.apache.kafka.common.serialization.StringSerializer 
4

1
クライアントの論理名。
2
クライアントが Kafka クラスターへの初期接続を確立できるようにするためのブートストラップアドレス。
3
Kafka ブローカーに送信される前にメッセージキーをバイトに変換するシリアライザー。
4
Kafka ブローカーに送信される前にメッセージ値をバイトに変換するシリアライザー。

プロデューサークライアント設定をコードに直接追加する

Copy to Clipboard Toggle word wrap
Properties props = new Properties();
props.setProperty(ProducerConfig.CLIENT_ID_CONFIG, "my-producer-id");
props.setProperty(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "my-cluster-kafka-bootstrap:9092");
props.setProperty(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
props.setProperty(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
KafkaProducer<String, String> producer = new KafkaProducer<>(properties);

KafkaProducer は、送信するメッセージの文字列キーと値のタイプを指定します。使用されるシリアライザーは、Kafka に送信する前に、指定された型のキーと値をバイトに変換できる必要があります。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.