53289


タイトルの件、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が利用できるメモリも増えると考えて問題ないでしょうか？

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


CC BY-SA 4.0
2019-03-08T06:24:41.033
53287
2019-03-08T07:46:13.687
2019-03-08T07:46:13.687
9228
9228
question
c# asp.net iis
IISで使用可能なメモリを増やしたい


[XY問題](https://ja.meta.stackoverflow.com/q/2701/4236)ではないでしょうか？

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

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

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


CC BY-SA 4.0
2019-03-08T07:37:42.087
53289
2019-03-08T07:37:42.087
4236
53287
answer