Apache KafkaのJavaクライアントを使ったプログラムを書く時、いつもAuto Commitでやっていたので、ちょっと他のパターンも 試してみようかと思いまして。 見てみると、ConsumerでCommit、ProducerではTransactionが使えるようです。 参考) Design / Message Delivery Semantics Kafka Simple Consumer Failure Recovery Transactions in Apache Kafka Apache Kafka Best Practices Kafkaコンシューマのリバランスはいつ行われるか - 見習いプログラミング日記 今回、ちょっとこのあたりを試していこうと思います。 準備 Maven依存関係は、こちら。 <dependency> <groupId>org.apache.kafka
Apache Kafkaには、Consumer Groupという概念があります。 Introduction / Consumers Consumerにラベル付けをすることで、Consumerをグルーピングします。こうすることで、Brokerから配信されるレコードが、そのConsumer Group内の ひとつのConsumerに配信されるようになります。 上記のドキュメントのように、2つのConsumer Groupがあった場合は、2つのConsumer Group内のどれかひとつずつのConsumerインスタンスが レコードを受け取ります。 仮に全Consumerが同じConsumer Groupに属して入れば単純に負荷分散、全Consumerが異なるConsumer Groupであれば ブロードキャストのような扱いになります。 参考) Java Clientで入門する Apache K
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く