問題タブ [apache-kafka]
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.
message-queue - Kafka 0.8 プロデューサー、「request.required.acks」プロパティの使用
プロデューサー構成の下の0.8ドキュメントから、プロパティrequest.required.acks
値は、いつ
producer receives an acknowledgement
ブローカーから送信されるかを制御します。典型的な値は
(1) 0。これは、プロデューサがブローカからの確認をまったく待機しないことを意味します
(2) 1 は
producer gets an acknowledgement
、リーダー レプリカがデータを受信した後であることを意味します。(3) -1。これは、
producer gets an acknowledgement
すべての同期レプリカがデータを受信した後であることを意味します。
request.required.acks
値がの場合、プロデューサーでこの確認を受け取る方法を教えてください1
。ボイドであるため、それproducer.send(MessageKey)
を取得するオプションが見つかりませんでした。
java - Kafka: 複数のストリーム コンシューマーを作成できない
Kafka 0.8 ベータ 1 を起動して実行しました。非常に単純な例を起動して実行していますが、問題は、複数ではなく 1 つのメッセージ コンシューマしか動作させられないことです。つまり、runSingleWorker() メソッドは機能します。run() メソッドは機能しません:
そして私のおもちゃの消費者の中:
問題は、ワーカーのプールがメッセージを取得しないことです。
Produce コマンド ラインを介してメッセージを追加すると、シングル スレッド ワーカー バージョンではメッセージが出力されますが、マルチストリーム環境ではメッセージが出力されません。何が起きてる?どうすればこれを修正できますか?
ところで、kafka 0.8 の pom.xml は有効な pom ではなく、依存関係を取得しないため、完全な依存関係を持つ pom を次に示します。
queue - 単純なプル メッセージ キュー
仕事に適したツールを見つけようとしています。Kafka、Kestrel などのいくつかの異なるメッセージ キューを調べましたが、PULL 機能を備えたものを探しています。
着信メッセージをキューに押し込む API (分散) があります。次に、キューからメッセージをプルするワーカー (別のマシン) を用意します。これにより、ワーカーがフラッディングされず、キューの負荷を処理できなくなります。
Kafka または Kestrel がこのタイプの機能をサポートしているかどうか疑問に思っています
node.js - ログ集計に Apache Kafka を使用する
クイックスタート チュートリアルから Apache Kafka を学習しています: http://kafka.apache.org/documentation.html#quickstart。これまで、次のようにセットアップを行ってきました。Web サーバーがポート 8888 で実行されているプロデューサー ノード。 別のノード上の Kafka サーバー (ブローカー)、コンシューマーおよび Zookeeper インスタンス。また、デフォルトのコンソール/ファイル対応のプロデューサーとコンシューマーを 3 つのパーティションでテストしました。セットアップは完璧で、送信したメッセージを作成した順序で (各パーティションで) 見ることができます。
ここで、Web サーバーから生成されたログを Kafka Broker に送信したいと考えています。これらのメッセージは、後でコンシューマーによって処理されます。現在、syslog-ng を使用してサーバー ログをテキスト ファイルにキャプチャしています。ログ集計に kafka を使用するためにプロデューサーを実装する方法について、3 つの大まかなアイデアを思いつきました。
プロデューサーの実装
第 1 種:
syslog-ng の tcp ポートをリッスンします。各メッセージを取得し、kafka サーバーに送信します。ここには 2 つの中間プロセスがあります: Producer と syslog-ng
2 番目の種類: syslog-ng を Producer として使用します。ファイルに書き込む代わりに、メッセージを Kafka サーバーに送信する方法を見つける必要があります。Syslog-ng、プロデューサーは中間プロセスです。
3 番目の種類: Web サーバー自体をプロデューサーとして構成します。
私の考えは正しいですか。最後のケースでは、中間プロセスはありません。しかし、その実装がサーバーのパフォーマンスに影響を与えるとは思えません。Apache Kafka を使用する最善の方法 (上記の 3 つが適切でない場合) を教えてくれ、サーバーの適切な構成を案内してくれますか?..
PS: Web サーバーに node.js を使用しています
ありがとう、
サラス
apache-kafka - 複数のブローカー Kafka 0.7
Kafka 0.7.2 を使用して複数のブローカーを開始しようとしています。次のエラーが表示されます。
2 つのブローカー用に 2 つの異なる構成ファイルを作成し、次のコマンドで実行しました。
私は0.8で同じことをしましたが、うまくいきました。ここで何か不足していますか?