IISで使用可能なメモリを増やしたい

投稿者: Anonymous

タイトルの件、IIS上で動作するASP.NETのWEBアプリ(C#)で大量のデータを
SQL Serverから検索して、処理しています。
Webアプリで大量のデータを扱うのは設計が悪いということはわかっておりますが、
件数が増えるにつれて、メモリ領域の確保に時間がかかり検索速度が大幅に遅くなってしまう
状況です。

動作環境は以下となります。
Windows Server 2012 R2
IIS 8.5
メモリ 32GB
SQL Server 2016 Standard Edition
SQL Server も複数インスタンスが同じサーバ上で動作(同居)しており、
リソースモニタで確認すると30GB程度使用中となっています。
IISの利用しているアプリケーションプールの
プライベートメモリ制限と仮想メモリ制限は、0で設定しており、
無制限の認識です。

少しでも状況を改善したいと思っておりますが、単純にメモリを増設すれば
IISが利用できるメモリも増えると考えて問題ないでしょうか?

知見があるかたご回答いただけますと幸いです。

解決

XY問題ではないでしょうか?

Webアプリで大量のデータを扱うのは設計が悪いということはわかっておりますが、件数が増えるにつれて、メモリ領域の確保に時間がかかり検索速度が大幅に遅くなってしまう状況です。

「件数が増えるにつれて、検索速度が大幅に遅くなってしまう」は疑う余地のない観測された事実と思います。しかしその原因が「メモリ領域の確保に時間がかかり」であると特定できているのでしょうか?
当たり前ですが原因でなかった場合、メモリを増設してもメモリが増えるだけで速度は改善しません。

ですので、原因を特定することをお勧めします。
「大量のデータを扱うのは設計が悪いということはわかっております」との記述はプログラムを修正しない前提でしょうか? であれば、ディスクに負荷がかかっているのであれば高速なSSDを、ネットワークに負荷がかかっているのであれば10GbEを、と対策を取るべきです。

回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *