2012-01-05 3 views
0

私は、アプリケーションデータストレージからデータを返す.NET 4.0 Webサービスを作成しました。基本的には、リモートの構造化テキストファイルにアクセスしています。データの要求には、平均で10〜14秒かかります。過去3〜4週間以内に、サーバーは同じデータにアクセスするのに約4分かかります。ネットワークを問題として削除しようとすると、アクセスしていたファイルをWindows 2003上のIIS 6.0サーバーに移動しましたが、データを返すのにまだ約4分かかります。Windows 2003でのIIS 6のトラブルシューティングに関する考え方

データファイルにアクセスするCOBOLアクセスコードを呼び出す.NET 4.0 Webサービスがあります。アクセスコードもファイルも変更されていません。

問題はIISサーバーのようです。開発者ワークステーションからこのWebサービスを実行して、リモートアプリケーションサーバー上のファイルにアクセスすることができます。これは10〜14日以内に実行されます。

パフォーマンス:Webサービスのプロセッサ利用率は50%を超えていません。私はディスクを詳しく見ていませんが、サーバはほとんどの場合アイドル状態です。

私はどこからトラブルシューティングを開始するかを知るための提案を探しています。

おかげで、 マーティン

+0

あなたは実際に問題を見ていますか?ウェブサービスリクエストはデータを返すために4分かかりますか、または結果を消費しレンダリングするのに時間がかかりますか? – AaronS

+0

コードをステップ実行すると、COBOLシステムへの呼び出しが最も時間がかかるようです。私が理解していない部分は、これがこのコンピュータ上で10〜14秒から4分までどのようになったかということです。プロセスを実行させると、私が求めたデータが返されるので、パーミッションがあります。 私はChromeのコンソールからクライアントが実際に応答したかどうかを確認します。さらに、応答がいつ返ってくるかを見るためにFiddler2を実行します。 – Martin

+0

プロダクションサーバはファイアウォールの内側かDMZ内にありますか? DNSの問題が発生したときに、何らかのネットワーク遅延が発生する可能性があります。 – AaronS

答えて

0

私はちょうど私が、社内の自分のCOBOL開発者の一人で見つけたもの掲示、COBOLの専門家ではありません。

Webサイトに対してプロファイリングを実行しましたが、これは私がよく知りませんでしたが、多くのデータを移動していました。 COBOLの開発者は、コードをプロトタイプとして扱うために、大量のデータを移動する「リンケージ」を持っていました。当初は、これらの大きなチャンクのうち13個以上がメモリ内を移動していました。私は正確なエラーメッセージを覚えていませんが、Profilerは仮想メモリの使用量が多かったり、アプリケーションが重いページングを使用していると述べています。

アプリケーションを再作成したところ、メモリ使用量が大幅に減り、データが2〜3秒以内に返送されているようです。

Martin

関連する問題