Azure Event Hubs に対応した Spring Cloud Stream Binder の一般提供が開始されました。Spring Cloud Stream と Event Hubs を使用して高度にスケーラブルなイベント ドリブン Java アプリを簡単に構築できます。Event Hubs は、Azure におけるフル マネージドのリアルタイム データ インジェスト サービスで、どのような状況でも高い回復性と信頼性を提供します。geo ディザスター リカバリーおよび geo レプリケーション機能により、緊急事態にも対応できます。
Spring Cloud Stream は、一般的なメッセージ ブローカー実装にバインダーの抽象化を提供します。これにより、一貫性のある pub/sub セマンティクス、コンシューマー グループ、ステートフル パーティションのサポートを含む、既に確立された一般的な Spring 語法とベスト プラクティスに基づく柔軟なプログラミング モデルが提供されます。そのため、開発者は、Event Hubs を使用して Java アプリを構築する際に同じパターンを使用できるようになります。
使用を開始するには
チュートリアル「Azure Event Hubs を使用する Spring Cloud Stream Binder アプリケーションを作成する方法」を確認して、Spring Boot Initializer と Azure Event Hubs を使用して Java ベースの Spring Cloud Stream Binder アプリケーションを作成します。Azure portal に移動して、新しい Event Hubs 名前空間を作成します。次の Maven の依存関係を Java プロジェクトに追加します。
<dependency> <groupId>com.microsoft.azure</groupId> <artifactId>spring-cloud-azure-eventhubs-stream-binder</artifactId> <version>1.1.0.RC4</version> </dependency>
メッセージを発行する
@EnableBinding(Source.class) を使用してソース クラスに注釈を設定し、Spring Cloud Stream のパターンを使用して Event Hubs にメッセージを発行します。構成によってソースの出力チャネルをカスタマイズすることができます。
- 発行先: 出力チャネルと接続するイベント ハブを指定します。
- 同期/非同期: メッセージを生成するモードを指定します。
メッセージをサブスクライブする
@EnableBinding(Sink.class) を使用してシンク クラスに注釈を設定し、Event Hubs からのメッセージを使用します。構成によって入力チャネルをカスタマイズすることもできます。完全な一覧が必要な場合は、「Azure Event Hubs を使用する Spring Cloud Stream Binder アプリケーションを作成する方法」を参照してください。
- 発行先: 入力チャネルとバインドするイベント ハブを指定します。
- コンシューマー グループ: メッセージを受信するコンシューマー グループを指定します。
Azure Event Hubs に対応した Spring Cloud Stream Binder を使用してイベント ドリブン Java アプリの構築を試みる
Azure Event Hubs で Spring Cloud Stream Binder を使用した Java アプリの構築をお試しになり、メールまたは下のコメントからご感想をお寄せください。