2015年1月19日月曜日

Debug Diagnostic Toolの設定

・前記事で行った内容

 Debug Diag Collectionを起動

  ⇒Add Rule
    Performance
    Performance Counters
  ⇒Add Pref Triggers
    W3SVC_W3WPを選択
    ⇒対象のアプリケーションプールを選択
     追加
  ⇒Select Performance Countersの画面
    リストを全選択
  ⇒Edit Threshold
    Above
    1
    1
  ⇒Select Dump Targetsの画面
    Add Dump Target
    All active IIS/COM+ related processes

こんな感じ

Debug Diagnostic Tool

IIS上でw3wp.exeがcpuに高負荷をかける現象について

IIS Worker Process(アプリケーションプールのw3wp.exe)
がCPUを100%使用してしまう現象について。


何も特に処理を実行していないのに
w3wp.exeのCPU使用率が15%~25%程度動いたままであった。

MicrosoftのDebug Diagnostic Toolを使用して
プロセスの状態をダンプしたところ

Oracle.DataAccess.Client.OracleTuningAgent.DoScan()
Oracle.DataAccess.Client.OracleTuningAgent.TuningFunction()

が、動いているように出てきた。

それを基に以下を参照した。

Oracle 11g 11.2.0.1の64bit版の不具合らしい。
11.2.0.2で解消されているとのことだが

プログラムのConnectionStringに以下を
追加することで解決した。

SelfTunig = false