2017-01-11 12 views
-1

メンバーはオンラインで支払い/住所の詳細を更新するための非常に単純なasp.net WebフォームWebサイトを用意しています。問題は、レガシーな内部システムのために、いったん完成すると、構文解析が必要な古典的なXML Webサービスを使用する必要があります(XML文字列を返します。ユーザーが自分のアカウントにログインすると、約20回のWebサービス呼び出しが行われます。あまりにも忙しくないサーバーでは、最初の負荷で約10〜15秒かかる傾向があります。非常に少数のユーザーからWebアプリケーションでCPU使用率が非常に高い

高速接続で動作する専用の専用サーバーがあります。 64ビットWindows Server 2008 R2 Standard、デュアルコアIntel Xeon E5-2650 2.67Ghzプロセッサ、24GB RAMです。

約20人のメンバーしかログインしていない場合、サーバーはかなり無駄になります。 CPU使用率100%、メモリ使用量が503エラーになります。たとえば、メモリー/ CPUの使用量をWebサービス呼び出しに結びつけることができれば、それについて何か試してやることができます。

私はこれを見つける方法はありません。私はdebugdiagを試しましたが、クラッシュします。 Perfmonのものは私にも何の助けも与えていないようです。

IISプール内の最大ワーカープロセスを1以外に設定すると、複数のプロセスが互いに競合して100%を占めるようになります。

私は現時点で完全に詰まっており、ヒント/ヒントはありがたいですか?

+0

は、プロファイラを実行するか、CPUの使用状況を分析するために、ダンプ解析を使用し、原因を伝えるための唯一の実行可能な方法です。あなたはコードにバグがある可能性が非常に高いです。 –

答えて

1

私はこれを調べるために多くの研究と時間をかけてきたことを本当に考慮しないで下降した人に感謝します!

私たちの問題(おそらく、キーワード「XML」と「メモリ使用」でいくつかの人が気づいていたはずでした)は、XMLSerializerの宣言が使用されていました。以前の開発者は、それが処分されていない方法でやっていましたが、静的なクラスに変更すると直ちにすべてを解決しました。私が使用したものに

リンク:http://dotnetcodebox.blogspot.co.uk/2013/01/xmlserializer-class-may-result-in.html

関連する問題