2017-05-02 8 views
0

私はクライアントIDが "p1"で、クォータが50MBpsのクライアントに属するカフカプロデューサーを持っています。カフカプロデューサーはレプリカの存在下でクォータレートでデータを供給できますか?

"bin/kafka-producer-perf-test.sh"を使用して私のプロデューサのパフォーマンスをテストしました。レプリカなしでパーティションに書き込むとき、50 MBpsに近いスループットを得ることができました。

3つのレプリカを持つパーティションで同じ実験を試みました。しかし今回は、スループットが30 MBpsに低下しました。

私の質問は、kafkaはプロデューサーがレプリカの存在下でも50 MBpsのスループットを得られるようにすべきですか?システムには何も実行されていないので、なぜこれが起こっているのかわかりません。

答えて

0

プロデューサのacks設定を変更しましたか?あなたの説明から、acksallに設定されていると思われます。したがって、送信されたデータがスループットに影響を与える3つのブローカ間で複製されるまで、プロデューサは待機します。 acksを変更しない場合は、0に設定してください。プロデューサは、スループットに影響するかどうかを確認するために、サーバーからの肯定応答をまったく待つことはありません。

+0

私はすべてからackが必要です(同期レプリケーション)。私の基本的な疑問は、ネットワークには何もないので、kafkaはプロデューサーに50 MBpsのスループットを依頼するべきではないということです。 – brokendreams

関連する問題