問題タブ [w3wp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - w3wp の CPU 使用率が高い
.NET Web サイトを 2008 (IIS7) サーバーにデプロイしましたが、サイトは最大 30 ~ 50 人の同時ユーザーに対応しているようです。負荷テストを行ったところ、同時ユーザーが 100 人を超えた時点でサイトが停止しました。ページ読み込みが 1.5 秒から 90 秒以上に
w3wp は 100% に達し、負荷テストを停止するまでそのままです。一方、SQL は約 2 ~ 3% でアイドル状態になります。
debug diag でトレースを行ったところ、レポートは 11.358 の CPU 時間を消費しているスレッドの 1 つを示しています。犯人が見つかったのは素晴らしいことですが、与えられた情報をどう解釈すればよいかわかりません。レポートの出力は次のとおりです。
スレッド 19 - システム ID 4016 エントリ ポイント 0x00000000 作成時刻 2009 年 7 月 8 日 9:28:53 PM ユーザー モードで費やされた時間
0 日 00:00:11.187 カーネル モードで費やされた時間 0 日 00:00:00.171関数 ソース ntdll!KiFastSystemCallRet
ntdll!NtWaitForSingleObject+c
kernel32!WaitForSingleObjectEx+be
mscorwks!PEImage::LoadImage+1af
mscorwks!CLREvent::WaitEx+117
mscorwks!CLREvent::Wait+17
mscorwks!ThreadpoolMgr::SafeWait+73
mscorwks!ThreadpoolMgr ::WorkerThreadStart+11c mscorwks!Thread::intermediateThreadProc+49 kernel32!BaseThreadInitThunk+e ntdll!__RtlUserThreadStart+23ntdll!_RtlUserThreadStart+1b
どんな助けでも大歓迎です!
asp.net - asp.net C# を使用して w3wp.exe プロセスを再起動する方法は?
asp.net C# を使用して w3wp.exe プロセスを再起動する方法は? たとえば、Web フォーム ページのボタンをクリックして、サーバーで w3wp.exe プロセスを再起動したいとします。
.net - ASP.Net Web サイトは、IIS ワーカー プロセスをクラッシュさせる要求のバーストを取得します
私は、2 つのサーバー クラスター全体でかなり大量の asp.net Web サイトを実行しています。通常の負荷は、ASP.Net Apps パフォーマンス オブジェクトによって記録されるように、サーバーごとに約 20 要求/秒です。
パフォーマンス カウンターは、1 日の定期的な時間帯に 2,000 ~ 9,000 リクエスト/秒をログに記録します。この時点でワーカー プロセスが終了し、「.Net ランタイム 2.0 エラー レポート」アプリケーション ログに「Faulting application w3wp.exe」がリストされて報告されます。
奇妙なことに、IIS は現時点で要求のバーストを記録していません。Web ログには、この時点まで通常のトラフィック ペースが記録されており、何千ものリクエストのバーストは示されていません。
サーバーは、Windows 2003 64 ビット サーバーで IIS6 を実行しています。6GBのRAMを搭載したクアッドコアのxeonです。
負荷分散されたクラスター内の 2 つのサーバーのうちの 1 つだけが、このボリュームの要求を記録します。他のサーバーは、1 秒あたりの平均要求数が 20 程度を超えることはありません。
パフォーマンス ログに、どこにも記録されていない大量の要求が表示される理由について何か考えはありますか? この負荷の原因を特定できず、何らかのアプリケーション エラーなのか、それとも本当にトラフィックのバーストなのか疑問に思っています。
犯人を追跡する方法について何か提案はありますか?
asp.net - ASP.NET:無負荷でのCPU使用率が高い
私は数週間以来、大きな問題に直面しています。IIS7(W2008 SP1)でホストされているasp.netアプリケーションを使用していますが、ユーザーが接続していない場合でも、数時間ごとにCPUの50%近くを消費し始めます。Quartz.netを使用してアプリケーションをリサイクするので理解できますが、まだ問題を再現できませんでした。
CPUが高いときにJetBrainsdotTrace3.1で作成されたトレースは次のとおりです: http://mycenter.info/tmp/DotTraceSnapshot.zip
通常、CPUを浪費するプロセスはw3wp.exeですが、ここ数日でsqlserver(2008)とmemcached(1.2.1、月曜日に1.2.4ベータに更新)もCPUを強制終了していました。memcachedが100%を消費し始め、その統計が静かであることを示しているのは奇妙なことですが、リクエストが行われると正常に動作します。
WinDbgを使用したw3wpのクラッシュダンプ(またはスタックトレースダンプ):(このガイドに基づく: http: //blogs.technet.com/marcelofartura/archive/2006/09/15/troubleshooting-iis-100-cpu -issues-step-by-step-intermediary.aspx)
事前にヒントをありがとう!
アップデート:
ハングしたスレッドのマネージドスタックは次のとおりです。memcachedプロバイダーのように見えると思いますが、どうすればよいかまだわかりません。
解決策が見つかりました:
これは、Windows2008で実行しているときのWin32のmemcached1.2.1のバグが原因でした。v1.2.6に更新すると、すべてが機能しました。memcachedに接続するために使用しているライブラリには、memcachedがまだ応答している場合でも、ハングしていたリサイクルプロセスがあるため、w3wpプロセスが表示されていたと思います。
解決策2が見つかりました:
最初の解決策が機能しない場合は、この投稿をお読みください。memcachedソリューションは、SmtpClientのバグである実際の問題を隠すだけだと思います。
w3wp - AppPool とワーカー プロセス
簡単な質問:
AppPool はワーカー プロセス w3wp と同じですか?
これが「アイドル タイムアウト」後に w3wp.exe がシャットダウンした場合、IIS マネージャーで AppPool がまだ実行されていると表示されるのはなぜですか?
また、「アイドル タイムアウト」後に w3wp.exe がシャットダウンした場合、自動的に再起動されませんか? それともトラフィックが Web サイトに再び入ってきたときにのみ再起動しますか?
どんな助けでも大歓迎です。
memory - w3wp プロセスを大幅に増大させるのはどのリクエストですか?
運用環境で、w3wp.exe プロセス内で最大のメモリ負荷を引き起こしている Asp.Net http 要求 (aspx、asmx、またはカスタム) をどのように検出できますか? ここでメモリリークを意味するわけではありません。これは、すべてのオブジェクトを適切に処理する、健全なアプリケーションです。Microsoft の世代別 GC は正常に動作します。ただし、一部のリクエストでは、w3wp プロセスのメモリ フットプリントが大幅に増加しますが、それはリクエストの実行中のみです。
最もメモリを消費する「ページ」について開発部門に定期的に報告し、その (メモリ) プレッシャーをそれが属する場所に戻すには、SAAS アプリの運用環境のコスト効率とスケーラビリティの問題にすぎません。 、 いわば。
次のようなものはないようです:
HttpContext.Request.PeakPrivateBytes または .CurrentPrivateBytes
または
Session.PeakPrivateBytes
delphi - 制限されたユーザー アカウントで IIS の w3wp.exe を実行することは可能ですか?
Windows 7 と IIS 7 を使用しています。Delphi DataSnap ISAPI を作成しています。ISAPI dll で発生したバグを追跡したいと考えています。
「w3wp.exe -debug」を使用すると、Delphi IDE で ISAPI dll をデバッグするのに役立つ場合があることを学びました。ただし、管理者グループではなく、制限されたユーザー アカウントで ISAPI をデバッグしたいと考えています。
w3wp.exeを実行する前に、フォルダ「C:\Windows\System32\inetsrv\config」へのアクセス権を設定しました。ただし、w3wp.exe を起動する際に問題が発生します。イベントログは次のとおりです。
w3wp を実行する前に IIS サービスを停止しました。
何か案は?
asp.net - ASP.NET アプリの読み込み時間が遅い - 読み込みサイクル全体を追跡/トレース/時間測定できますか?
私が現在取り組んでいる ASP.NET Web アプリ プロジェクトは、(IIS または .NET 開発サーバーで) 再読み込みに時間の経過とともに遅くなります。現在、次のものが必要です。
- F5 デバッグによるロードに 1:28 分
- ビルド後 (再ビルドではない)、ブラウザーでの更新に 41 秒
マシンはかなり高速です - Core 2 Quad 2.40ghz、8 ギガ o' RAM、開発 VM に割り当てられた 2 ギガ o' RAM を使用して HyperV で開発マシンを実行します。
その初期ロードのサイクル全体を追跡/報告する方法はありますか? 基本的な IIS ワーカー プロセスの開始、DLL のロード、実際の .NET コードの実行にかかる時間を確認できれば、すばらしいことです。
コードでプロファイラーを使用できることはわかっています.DB接続の確立時間が非常に遅くなることはありませんが、実際のページが処理される前に、それらのパフォーマンスについて洞察を得たいと思います. CPU モニターがプロセスの途中で少しの間 100% に達し、RAM 使用量が少し跳ね上がっているのがわかります。
プロジェクトの開始時 (4 か月前) には測定を行いませんでしたが、リロードは比較的簡単だったと確信しています。
ビルド中にコーヒーを飲むことしかできないプログラマーの皆さん、どんな助けでも大歓迎です。
アップデート:
JetBrain のdotTraceは (この例では) 優れていました。ありがとうございます。Web プロジェクトを開始するのに最適なインターフェイスを備えており、ほとんどの時間がApplication_Start() ( Global.asax内) に費やされていることがすぐにわかりました。
次のように、他のオプションはこれを選択しませんでした。
TraceオプションはPreInit からのみ開始され、Application_Start() 呼び出しがありません。
StopWatch呼び出しでは、どこを見ればよいかを知る必要がありました。または、printf スタイルのデバッグの古き良き時代に戻る必要がありました...
nprofは .exe をターゲットにしたいため、新しい w3wp.exe インスタンスにアタッチしようとするとターゲット領域が失われます...
asp.net-mvc - ワーカー プロセスは AppPool 内で出力キャッシュを共有しますか?
概要:
「WebsiteAppPool」という名前の AppPool を使用して、「Website」という名前の IIS に ASP.NET MVC Web サイトがあります。WebsiteAppPool は、最大 4 つのワーカー プロセスを許可するように構成され、実質的に「Web ガーデン」を作成します。Web サイトは、web.config を介して構成され、CacheProfiles を使用して OutputCaching を有効にします。
私の質問は -
AppPool のワーカー プロセスは出力キャッシュを共有しますか、それとも各ワーカー プロセスが出力キャッシュを持っているので、AppPool 全体で 4 つのキャッシュされたコピーが作成されます。
ノート:
私の主な懸念は、これがキャッシュされた出力を持つことの利点を明らかにすることであり、キャッシュされた出力を提供する WorkerProcess を 4 つではなく 1 つ持つ方がよいでしょう。
c# - デバッグエラー-w3wp.exeへの添付エラー
VSTS 2008 + .Net 3.5 + C#を使用しています。また、IIS 7.0用のカスタムForms認証モジュールを開発し、w3wp.exeに接続してこのモジュールをデバッグしました。アタッチプロセス中に([ツール]-> [プロセスにアタッチ]を選択し、デバッグしているコンピューターでそれ以上の操作は実行されません-アタッチが完了するのを待つだけです)、次のエラーが発生しました。 ?
デバッグ中のWebサーバープロセスは、インターネットインフォメーションサービス(IIS)によって終了されました。これは、IISでアプリケーションプールのping設定を構成することで回避できます。詳細については、ヘルプを参照してください。