2017-05-30 5 views
0

私のノードアプリケーションにフローモード消費者rdkafkaを使用しています。私は一度に少数のメッセージしか取り出さない。それはメッセージを取得し続け、それらをキューにバッファリングしますか?はいの場合、この設定を変更して、取り出されるメッセージの数に制限を設けることはできますか?ノードrdkafkaで流れる消費者の仕事

答えて

0

私はrdkafkaについてはわかりませんが、Javaクライアントにはnoを制限する設定があります。 1回のポーリング操作でフェッチされたレコードの数。

max.poll.records(ポーリングする単一の呼び出しで返されたレコードの最大数)

0

キューに入れられたメッセージが特定の限界に達するまではい、消費者は、キューにメッセージを取り出します。

あなたの消費者のconfigでこのプロパティを使用してみてください:

{ 
    //... 
    'queued.max.messages.kbytes': 1024 
    //Maximum number of kilobytes per topic + partition in the local consumer queue 
    //... 
} 

をこのプロパティは文書化されてhere