前回のチュートリアル「Get hands on experience with an IBM Event Streams Java sample application」では、Event Streams Java サンプルのロジックを確認し、それを変更して遊んでみました。 このチュートリアルでは、実際に小さなアプリケーションを作ってみましょう。
このチュートリアルでは、まず、小さなバイナリ・アプリケーションを実行します。このアプリケーションは、あるトピックに対するいくつかのレコードを生成します。次に、トピックからのレコードを消費するコンシューマ・アプリケーションを書き、レコードの中に入れられた秘密のメッセージを復元することが課題です。
前提条件¶
この課題を達成するには、ローカル環境に以下のものが必要となります。
課題¶
用意されたプロデューサー・バイナリ・アプリケーションを実行してメッセージを生成し、コンシューマー・アプリケーションを修正して秘密のメッセージを見つけることが課題です。
プロデューサアプリケーションは event-streams-coding-challenge
という名前のトピックを作成し、秘密のメッセージを含むレコードを送信します。次のステップでは、サンプルアプリケーションの App.java
を編集して、秘密のメッセージを見つけるまでレコードを消費し続けるためのポーリングループを追加します。秘密のメッセージは、次のキーを持つレコードの値です: coding-challenge
.
以下の手順でチャレンジを完了させます。
-
チャレンジコードをダウンロードします。このコードは ibm-messaging/eventstreams-badge-sample の GitHub リポジトリに格納されています。
GitHubのibm-messaging/eventstreams-badge-sampleリポジトリにアクセスして、cloneまたはdownloadボタンをクリックします。「Clone with SSH」、「Use HTTPS」、「Download a ZIP with the code」のいずれかを選択できます。.ZIPファイルをダウンロードした場合は、リポジトリを解凍します。
2.Event Streams Serviceの認証情報から得たブローカーアドレスとAPIキーを入力して、プロデューサーアプリケーションを実行します。
出力に「`Congratulations!You have successfully set up the topic for the coding challenge.`" が出力され、秘密のメッセージが正しくトピックに書き込まれたことを確認します。
さて、いよいよ秘密のメッセージを復元してみましょう。
3.サンプルのコンシューマ・アプリケーションのプロジェクトを設定します。
まず,`coding-challenge-consumer`ディレクトリに移動します.
次に、お好みの IDE である `gradle eclipse` または `gradle idea` 用のプロジェクトを作成します。
最後に、お使いの IDE に consumer プロジェクトをインポートします。
4.4. IDE で App.java
を開き、TODO
コメントが表示されている部分のコードを修正します。
4 つの `TODO` コメントがあり、課題を達成するために必要な Consumer ロジックが強調されています。
5.コンシューマコードの修正が終わったら、アプリケーションをビルドします。
6.コンシューマ・アプリケーションを実行します。
もし、コードがうまくいかなくても、慌てないでください。ステップ4に戻って、変更を加えた後にステップ5と6を再実行すればいいのです。
行き詰まったら、Get hands on experience with Event Streams Java sampleのイベント・ストリーム・サンプルの説明を確認してください。このサンプルには、課題を完了するために必要なロジックがすべて含まれています。
まとめと次のステップ¶
おめでとうございます。あなたは初めてのKafkaアプリケーションを書き、コーディングチャレンジを完了しました。Event Streamsチートシートをチェックしたことを確認してください。なぜなら、イベントストリームのユーザーが知っておくべき忍者の動きが満載だからです。