ストレージおよび計算ノードとして動作するグリッド内に複数のノードがあるプロジェクトがあります。これらのノードは、専用サーバー ハードウェアからAlix ボード、さらには OpenWRT を実行する Mikrotik ルーターボード (ほとんどが Alix ボードで構成されています) に至るまで、さまざまな種類のものです。
sigar Java APIを使用して、RAM、SWAP、CPU 使用率などのシステム パフォーマンス メトリックを収集しています。これは本当にうまくいっています。
私の次のタスクは、これらのパフォーマンス値を取得し、どのホストが計算要求を最もよく処理できるかを判断できるようにホストを並べ替えられるように組み合わせることです。これは、Windows が Windows パフォーマンス インデックスを使用してコンピューターにパフォーマンス スコアを与える方法とほとんど同じと考えることができます。
これに対する私の最初の試みは、RAM、SWAP、および CPU 使用率の使用率を追加することでした (Linux の場合、負荷値を 0 から 1 の間の値にスケーリングしました)。スコアが最も低いホストが計算操作用に選択されました。
誰かがこれを行う方法についてより良いアイデアを持っていますか? 私のやり方は非常に「ハック」で、このプロジェクトの仕事に取り組みたいとは思いませんでした。
ありがとう