問題タブ [librdkafka]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
483 参照

c++ - LibRdKafka: commited_offset は常に -1001

消費者グループを実行すると、常に次のような統計が得られます。

ご覧のとおり、すべてのオフセットが -1001 に設定されています。

これは私のセットアップです(default_topicも):

また、トピックに多くのメッセージがあっても、消費者グループがそれらを取得できない場合があります。何か案が?

0 投票する
1 に答える
839 参照

apache-kafka - librdkafka プロデューサーは Kafka の新しいトピック パーティションについてどのように学習しますか

Kafka クラスターへのメッセージを生成するために rdkafka_simple_producer.c を実行しています。1 つのトピックと 30 のパーティションがあります。デフォルトのラウンドロビン パーティショナーを使用します。プロデューサーが動作して Kafka へのメッセージを生成している間に、さらにパーティションを Kafka に追加します。

プロデューサーがこの変更に気付き、最終的には 40 のトピックすべてに対してプロデュースを開始することを期待しています。しかし、最終的には、元の 30 パーティションにデータが生成されたことしかわかりません。

テストでは、プロデューサーは 2 分間実行されました。

simple_producer に関数呼び出しを追加する必要がありますか、それとも考慮すべき Kafka パラメーターですか?

前もって感謝します!

0 投票する
3 に答える
4779 参照

apache-kafka - メッセージがない場合に Kafka コンシューマーから戻る

Confluent dotnet clientを使ってアプリ起動時にトピックを処理したい。次の例を想定します。

Kafka に新しいメッセージがない場合、c.Consume はブロックされます。アプリケーションの起動 (キャッシュのウォームアップなど) に使用したいので、新しいメッセージがないことがわかったときにコードを続行したいと考えています。

タイムアウトを設定するための過負荷があることは知っていc.Consume(timeout)ますが、このアプローチの問題は、トピックにメッセージがあり、メッセージを読む時間がタイムアウトを超えた場合、望ましくない null 出力を受け取ることです。

0 投票する
1 に答える
6140 参照

go - max.poll.interval.ms を超えた後に Kafka コンシューマがスタックする

コンシューマーが 5 分間 (max.poll.interval.ms のデフォルト値は 300000ms) メッセージを受信しない場合、コンシューマーはプログラムを終了せずに停止します。コンシューマ プロセスがハングし、それ以上メッセージを消費しません。

次のエラー メッセージがログに記録されます

ここで confluent-kafka-go でErrMaxPollExceeded定義されていることがわかりますが、それが発生している場所を見つけることができません。

このようなエラーが発生した場合、プログラムが終了しないのはなぜですか?

  • カフカ v1.1.0
  • librdkafka v1.0.0
  • confluent-kafka-go (マスター)

kafka.Consumer に使用される構成