21

ユーザーから「アプリケーションが遅い(またしても)」と言われると違和感を覚える開発者は多いのではないでしょうか。

複雑な Web アプリケーションでは、データベースの応答の遅さ、帯域幅の問題、不適切なキャッシュなど、(認識された) パフォーマンスの低下の多くの理由が考えられます。開発環境やステージング環境では決して発生しない問題が確かに存在します。

今私の質問:

IIS/ASP.NET/SQL Server 運用システムの包括的な「ライブ」状態を(パフォーマンス カウンターだけでなく) 視覚的に提供するツールやメソッドのセットはありますか?

  • 現在の HTTP リクエスト (最後の n 分間など)
  • 例外/タイムアウト
  • 帯域幅データ
  • 開いているデータベース接続/データベース呼び出しの数
  • ...

主な目的は、パフォーマンスの問題の原因となっている問題を一目で (または詳しく調べてから) 確認することです。

4

4 に答える 4

6

あなたが探しているソフトウェアのカテゴリは、「.net プロファイラー」または「.net トレーサー」だと思います。検討できるツールの 1 つは、JetBrains のdotTraceです。実行時のスタック トレースと、ボトルネックの可能性を示す一連のカウンターを提供します。

于 2008-11-03T16:48:40.873 に答える
4

前述のツールは確実に機能します。私たちのショップでは、より詳細な情報が必要であり、独自のソリューションを構築しました (長い話: ツールや取得可能なデータについて議論するよりもコーディングする方が簡単でした)。

私はLogParserを使用して IIS ログをめくり、それらのログの出力レポート (結果コードの内訳など) を作成しました。

パフォーマンス カウンターと WMI 値の組み合わせを使用して残りを取得しました。これらは、かなり単純な C# を使用して読み取ることができます。これにより、Excel で表示/処理するため、または更新する場合に .csv などにダンプできる完全な制御が可能になります。コントロールセンターとしてのページ。

また、デバッグやセキュリティなどを含む IIS ツールの優れたリソースとして、IIS.netを検討することもあるでしょう。

于 2008-11-03T17:43:47.550 に答える
1

CLR 4.5 には、アプリを再起動せずに ASP.NET のパフォーマンスをライブで監視するのに役立ついくつかの新機能があります。基本的に、コードを再 JIT していくつかの監視フックを含め、クラス/メソッドなどで費やされた時間を調べることができます。

dotTrace やその他のプロファイリング ツールがこれを自動的に活用すると確信していますが、チェックする価値はあります: C9 - Inside Re-JIT with David Broman

于 2011-09-23T19:34:10.273 に答える
1

urig のアドバイスに従い、SmartInspect というソフトウェアを見つけました。

このログ/監視ツールを知っている人はいますか? リアルタイムコンソールと開発者ライブラリの組み合わせのようです。

于 2008-11-03T17:17:32.750 に答える