今更ながらApache Kafkaに入門しました。 なんで今更触り始めたかというと、IBM CloudのEvent Stream(Kafkaのマネージドサービス)にLiteプランが出てきたからです。 限られた機能しか操作できないとはいえ、無料で使うのには十分です。
え?え!?IBM CloudのEvent Streams(Kafkaマネージドサービス)にLite Plan(無料だけど30日で消される)来てたの?は?は??すごいんだけど?? pic.twitter.com/qbHi7LvJql
— ぽんず (@ponzmild) 2019年12月27日
今回はJavaでメッセージの送受信を試みます。
公式のドキュメントにはJavaのサンプルコードが掲載されていますが、 1年近く前のコードなので非推奨のメソッドやクラスがあります。これらを避けながら改めて自分でも書いてみます。
以下、コードになります。 1クラスに押し込めているので少しコードが長くなっていますが、200行くらいで書けるもんですね。
Event Stream (manged Kafka service) Pub/Sub
ポイントとしては、Kafkaのクライアントに Properties
クラスに設定値を詰める時です。
IBM CloudのEvent Streamに繋ぐ場合は SSL / SASLの設定が必要です。
書いてみると意外と簡単ですね。Spring FrameworkでもKafkaを扱えるようなので、次はこちらにチャレンジですね。
以上。