Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
いつもお世話になっております。
QVWで、時間設定して毎朝リロードしているファイルが、たまに失敗します。
ログファイルを見ると、
Memory Allocation Delta for this file=121.20 Mb. Available Physical Memory Before Reload=4079.36 Mb. Available Physical Memory After Reload=3974.52 Mb. Total Physical Memory=3974.52 Mb.
といった内容になっていて、いつもサービスの停止と再開をすることで対応しています。
サーバーのRAMは、使っているうちに、だんだん上がっていき、サービスの停止、再開をすると一旦は減ります。
なにか対応の方法はありますでしょうか?
よろしくお願い致します。
通常運用時のメモリ使用量(サービス再起動してQVWファイルをオープンした時)はどれぐらいでしょうか。
リロード時の使用メモリはそのQVWの使用メモリと同程度必要になります。
QVServerは初期設定では物理メモリの90%を閾値にしています。
よって、メモリ使用量が急速に14.4GBを超えた場合にエラーを出力します。
あまりにも急激にメモリ使用量が上がると場合によってはOSがサーバを再起動することもあります。
一番確実な方法は物理メモリ量を増やすことです。
メモリ増設が難しい場合、運用としてQVW公開時間とリロードの時間帯を分けて、リロード前に
サービスの再起動を実施してメモリを開放してからリロードを実施し、リロード完了後に
QVWを公開するようにすることで急激に閾値を超えることが防げます。
メモリ使用量は、サービスが実行中はメモリキャッシュを保持するため徐々に上がっていき
物理メモリの70%まで増えていきます。
閾値は70と90が初期設定ですが、メモリ使用量が通常は70%になると、古いキャッシュを解放するようにしています。
リロードで急激にメモリ使用量が増える場合、今回のような現象が発生します。
通常運用時のメモリ使用量(サービス再起動してQVWファイルをオープンした時)はどれぐらいでしょうか。
リロード時の使用メモリはそのQVWの使用メモリと同程度必要になります。
QVServerは初期設定では物理メモリの90%を閾値にしています。
よって、メモリ使用量が急速に14.4GBを超えた場合にエラーを出力します。
あまりにも急激にメモリ使用量が上がると場合によってはOSがサーバを再起動することもあります。
一番確実な方法は物理メモリ量を増やすことです。
メモリ増設が難しい場合、運用としてQVW公開時間とリロードの時間帯を分けて、リロード前に
サービスの再起動を実施してメモリを開放してからリロードを実施し、リロード完了後に
QVWを公開するようにすることで急激に閾値を超えることが防げます。
メモリ使用量は、サービスが実行中はメモリキャッシュを保持するため徐々に上がっていき
物理メモリの70%まで増えていきます。
閾値は70と90が初期設定ですが、メモリ使用量が通常は70%になると、古いキャッシュを解放するようにしています。
リロードで急激にメモリ使用量が増える場合、今回のような現象が発生します。
回答をありがとうございます。
サービスを再起動後ファイルを開いてみた所、通常qvwでメモリ使用は5GB前後、一番データ量が多いqvwで約7.5GBでした。
返答を下さったように、リロード前にサービスの再起動を実施してメモリを開放してからリロードを実施、という対応をしつつ、リロード時間と読み込むデータのチューニングでqvw自体がもう少し軽くならないかなど、考えてみます。
ありがとうございました。