Windows フォーム アプリケーションがあり、アプリケーションのバックエンドは SQL Server Express 2005/2008 です。当社のアプリケーションは、Windows XP SP3/ Windows Vista/ Windows 7 にインストールできます。
SQL Server Express で大量のメモリ リークが発生しました。
通常、アプリケーションがユーザーによって使用されていない場合でも、2 つのプロセスが実行されています。
ファイルの可用性を確認するためのポーリング プロセス。(ファイルが利用できない場合は、構成設定を確認するために 1 つのクエリのみが起動されます)
スケジューリング プロセス。(このプロセスは、スケジュールされたタスクをチェックするために毎分クエリを起動します)
SQL Server (sqlsrvr.exe) のメモリ使用量が増え続けていることがわかりました。約 1 時間でメモリ使用量が最大 1GB に達し、それが下がることはありません。
また、ポーリング プロセスの間隔を長くすると、メモリ使用量が徐々に増加しますが、増加することにも気付きました。
SQL サーバーによるメモリ使用量が増えると、マシンのパフォーマンスと、そのマシンで実行されている他のすべてのアプリケーションのパフォーマンスが低下します。
この場合、SQL サーバーのメモリ使用量を制御するための提案を提供してください。
PFB 詳細:
問題を引き起こすソフトウェア:SQL Server 2005/2008 Express エディション (名前付きインスタンス)
問題をシミュレートできるオペレーティング システム: Windows XP SP3/ Windows Vista/ Windows 7
よろしく、
アビニート