Windows 2008 R2で実行されるカスタムサーバーアプリケーションがあります。これは、.Netで記述された独自のWindowsサービスであり、多数のカスタム端末をサポートしています。ライブサーバーと同様の仕様を持つテストマシンがあり、実際のシステムの妥当な近似である負荷を生成するために使用できるクライアントシミュレータのセットがあります。これらのうち12,000をサポートできる必要がありますが、現在サーバーのメモリが不足しています(ページングが屋上を通り過ぎています)。
私の計画は、100個のシミュレータのみを開始し、メモリ使用量を測定し、さらに100個のメモリ測定を開始し、ページングが開始するまで繰り返します(実際には、3つ以上のデータポイントを取得します)。これにより、 100個のシミュレータに必要な追加メモリの量。これにより、必要なメモリ量を予測できます。サーバーにかかる2Tb($ 150,000相当)の購入を避けるために、おおよその目安+/- 30Gbだけが必要です。私の質問は、これが使用するのに妥当な方法であるかどうか、そして実際に使用されているメモリの量を示すためにどのパフォーマンスカウンターを監視するかです。
ワーキングセット、プライベートバイト、コミット済み、共有、仮想、その他すべてのメモリ用語の違いで混乱するため、ここでは特にメモリについて話しています。CPU、IO、ネットワークを自分で監視できると思います。私が気づいたもう1つのことは、.Netキャッシュが使用可能なものに応じてメモリ使用量を調整するため、傾向を特定するのが困難になることです。