私たちがソフトウェアを開発している一部のお客様には、一定量の予備リソース (メモリ、ディスク容量、CPU) を「保証」する必要があります。メモリとディスク容量は単純ですが、CPU は少し難しいです。
私たちが使用した手法の 1 つは、保証された量の CPU 時間を消費するプロセスを作成することです (たとえば、5 秒ごとに 2.5 秒)。このプロセスが実行され、必要なすべての CPU サイクルが消費されることを保証するために、このプロセスを最高の優先度で実行します。
通常のアプリケーションが許容レベルのパフォーマンスで実行でき、空き時間プロセスの実行中にすべての機能テストに合格できる場合、空き CPU 時間のコミットメントを達成したと「仮定」します。
同じことを行うための他のテクニックがあると確信しており、それらについて学びたいと思っています。