問題タブ [stream-processing]
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.
java - コレクションまたはデータ構造のいずれかが Java でブロックされていない
イベント処理では、関数が値をコレクションに入れ、別の関数が同じコレクションから値を削除します。アイテムは、ソース (ソケット) から受け取った順序でコレクション内に配置し、同じ方法で読み取る必要があります。そうしないと、結果が変わります。
キューはほとんどの人が推奨するコレクションですが、同時に、アイテムが追加されているときにキューがブロックされているため、他の関数は追加が完了するまで待機する必要があり、非効率的であり、操作の待ち時間が時間の経過とともに増加します.
たとえば、あるスレッドがキューから読み取り、別のスレッドが同じキューに書き込みます。ロックが解放されるまで、いずれかの操作がキューで一度に実行されます。これを回避するデータ構造はありますか。
twitter - backtype.storm & org.apache.storm & com.twitter.heron パッケージのクラス間の違い
Apache Heron 用のカスタム スケジューラを作成したいと考えており、ソース コードを少し掘り下げています。ヘロンのソース コードには、類似したクラスを持つパッケージがいくつかあることに気付きました。たとえば、backtype.storm
&のほとんどのクラスorg.apache.storm
は類似しています (内部コードが同一であるなど、まったく類似しています)。com.twitter.heron
これら 2 つのパッケージと(たとえば)の間にもいくつかの類似したクラスがありますcom.twitter.heron.api.tuple.Fields
が、中には異なるコードが含まれているものもあります (Fields クラスなど)。トポロジを作成するときに、必要な各パッケージをインポートして、これらのいずれかを選択できることは知っていますが、それらの違いと、これらのパッケージをすべてまとめた理由に興味があります. それらをマージしませんでしたか?また、ストーム クラスがトポロジを記述するための唯一の選択肢である場合、クラスとはcom.twitter.heron
パッケージは良いですか?
ヘロンがストームと完全に下位互換性を持つように設計されていることは知っていますが、これは下位互換性の問題が原因である可能性がありますが、これらのクラス内に独自のコードを記述する必要があり、どちらを選択するか、開発者によって常に開発および保守されているものを選択する方法がわからないため、変更する候補としてそれらを選択する必要があります。
前もって感謝します。
opencl - OpenCL で最小限の LOC を使用して、AMD GPU をほぼ 100% のワークロードにストレスをかける方法は?
好奇心から、OpenCL を使用して HD5750 GPU にほぼ 100% の負荷をかけたいのですが、最小限の労力/コードでこれを行うにはどうすればよいですか? どうやら HD5750 には 720 個のストリーム プロセッサが搭載されているため、すべてのコアで並列計算ループを実行する必要があると思いますか?
apache-kafka - Apache Storm が Kafka-topic に連続番号を書き込む
カフカとストームでいくつかのパフォーマンステストを行いたいです。私の WordCount テストでは、連続番号が「出力」トピックに到着しています。
次のようになります。
私の嵐のトポロジは次のようになります。
私は何を間違っていますか?誰かが手がかりを持っていますか?ありがとう!
scala - ソースが限界に達した後、ストリーム処理を実装するサーバーに届くメッセージはどうなりますか?
私はakkaストリームを学んでいますが、明らかにそれはあらゆるストリーミングフレームワークに関連しています:)
akkaのドキュメントを引用:
Reactive Streams は、損失、バッファリング、またはリソースの枯渇なしに非同期境界を越えてデータを移動する方法の一般的なメカニズムを定義するためのものです。
さて、私が理解していることは、ストリームの前まで、たとえばhttpサーバーを例にとると、リクエストが来て、受信者がリクエストを終了したときに、来ている新しいリクエストがバッファに収集されるということですは待機中のリクエストを保持しますが、このバッファのサイズが不明であるという問題があり、ある時点でサーバーが過負荷になると、待機していたリクエストが失われる可能性があります。
そのため、ストリーム処理が開始され、制御可能になるようにこのバッファーが制限されました...そのため、並べたいメッセージ (私の例では要求) の数を事前に定義でき、一度にそれぞれを処理できます。
私の質問ですが、サーバーのソースが最大で 3 つのメッセージを持つことができるように実装すると、4 番目の ID が来るとどうなりますか?
つまり、別のサーバーが私たちに電話をかけてきて、私たちはすでに 3 つのリクエストを処理しているということです...彼のリクエストはどうなりますか?