ノードがn Erlangノードのクラスタを持っていると仮定します。そのうちのいくつかは私のLAN上にあるかもしれませんが、WANを使って(つまりインターネット経由で)接続しているかもしれません。 )異なる帯域幅の可用性/挙動(例えばレイテンシに起因する)b)異なる計算能力を持つノード(またはその問題のメモリ制約さえも)?Erlangノードの優先順位付け
つまり、レイテンシが高く、パワフルではないローカルノードに優先順位を付けるにはどうすればよいでしょうか、あるいは、送信レイテンシの高い高性能リモートノードに具体的に優先順位を付けるにはどうすればよいですかこれらのプロセスは、比較的大きな計算/送信(つまり、メッセージごと、時間単位ごとに完了した作業)の割合で実行しますか?
基本的には、初期化中に実行するベンチマークプロセスを送信することで、クラスタ内の各ノードをベンチマークすることを考えています。これにより、メッシングに伴うレイテンシを計算することができます。ノード特有のタイマーを使用して、ノードがどのようなタスクでどれくらい速く終了するかを決定する)。
おそらく、そのようなものは、一方では代表的なデータ(すなわち、平均化データ)を得るために繰り返し実行されなければならないでしょうし、他方では実行時には変化する実行時条件に動的に調整することができます。
(同じ意味で、1は、おそらく他のマシン上で実行されているものよりもローカルで実行しているノードの優先順位を決定したいと思う)
これは、特定のノードは、特定のジョブを処理するようにうまくいけば、内部の仕事の派遣を最適化することを意図されるだろう。
ご協力いただきありがとうございます。私は想像していた(そして私が質問で描いたこと)。このようなシナリオが、何らかの形のインフラストラクチャ(OTPを使用しているなど)によってサポートされるようになるのは興味深いことです。本当に私のシナリオにとても近いので、私はあなたの答えを受け入れました。 – none