2016-07-08 15 views
1

SimpleConsumer APIのみが、各コンシューマがデータを取得するパーティションを制御できます。オフセット管理が優れていると言われています。誰かが、この複雑なハイレベルコンシューマを使用するよりも、この細粒度のコントロールが必要なシナリオを詳しく説明できますか。ありがとうございました。Kafka SimpleConsumer(低レベルコンシューマ)の使用例/利点

答えて

1

実際、新しいコンシューマAPIは、シンプルAPIセットとハイレベルAPIセットの素晴らしい組み合わせです。 seek()メソッドとassign()メソッドは、あなたが言及する動作を提供します。

いずれの方法でも、1つのシナリオでは、異なるパーティションに優先順位を割り当てることが含まれます。たとえば、パーティション0は優先順位の低いメッセージであり、パーティション1は優先順位の高いメッセージです。その場合、パーティション0からのメッセージを消費する前に、パーティション1からのメッセージを消費したいとします。そのようなシナリオでは、カフカに特定のパーティションを読み取らせる必要があります。

2

あなたが消費者行動の完全な制御をしたい:

  • で-ケースネットワーク通信の問題のブローカーに無限の再試行特定のトピックパーティションから
  • 読み取りデータ
  • あなた自身オフセット管理(オフセットをdbに格納)
  • シンプルさ - 他のコンシューマのインスタンスを気にしないので、再残高は必要ありません。
関連する問題