第1章 開発中のクライアントの概要
メッセージの生成、メッセージの消費、またはその両方を実行できる、AMQ Streams インストール用の Kafka クライアントアプリケーションを開発します。OpenShift 上の AMQ Streams または RHEL 上の AMQ Streams で使用するクライアントアプリケーションを開発できます。
メッセージは、オプションのキー、メッセージデータを含む値、さらにヘッダーと関連メタデータで設定されます。キーはメッセージの件名、またはメッセージのプロパティーを識別します。メッセージのグループを送信時と同じ順序で処理する必要がある場合は、同じキーを使用する必要があります。
メッセージはバッチで配信されます。メッセージには、メッセージのタイムスタンプやオフセット位置など、クライアントによるフィルタリングやルーティングに役立つ詳細を提供するヘッダーとメタデータが含まれています。
Kafka は、クライアントアプリケーションを開発するためのクライアント API を提供します。Kafka プロデューサー API とコンシューマー API は、クライアントアプリケーションで Kafka クラスターとやりとりする主な手段です。API はメッセージのフローを制御します。プロデューサー API は Kafka トピックにメッセージを送信し、コンシューマー API はトピックからメッセージを読み取ります。
AMQ Streams は、Java で記述されたクライアントをサポートします。クライアントをどのように開発するかは、特定のユースケースによって異なります。データの耐久性が優先される場合や、高スループットが優先される場合があります。これらの要求は、クライアントとブローカーの設定を通じて満たすことができます。ただし、すべてのクライアントは、特定の Kafka クラスター内のすべてのブローカーに接続できる必要があります。
1.1. HTTP クライアントのサポート リンクのコピーリンクがクリップボードにコピーされました!
クライアントで Kafka プロデューサー API とコンシューマー API を使用する代わりに、AMQ Streams Kafka Bridge をセットアップして使用できます。Kafka Bridge では、HTTP ベースのクライアントと Kafka クラスターとの対話を可能にする RESTful インターフェイスが提供されます。これは、Kafka プロトコルを解釈する必要があるクライアントアプリケーションを必要とせずに、Strimzi への Web API 接続の利点を提供します。Kafka は TCP 経由でバイナリープロトコルを使用します。
詳細は、AMQ Streams Kafka ブリッジの使用 を参照してください。