
ASP.NETを用いたWebサイトをIIS上で運用した際、開発したアプリケーションが少しでも動いた後にアプリケーションを停止せずサイトを停止すると、ワーカープロセスが原因でCPUが100%となります。
CPUが100%の状態のまま放置してもCPUの負荷が無くなりません。(アプリケーションプールを停止させることによってCPUの負荷が無くなります。)
この事象に関してネットで原因を調査した結果、明確な解決方法が見当たらずこちらに質問させていただく次第でございます。IISの設定に関して詳しい方がおられましたら、この事象の原因と考えられる要素などをご教授下さい。
動作環境
Windows2008 R2
IIS7.5
.NET FrameWork4.5
開発環境
VisualStudio2012
ASP.NET(.NET FrameWork4.0) FORMSで開発
Oracle ODP
No.2ベストアンサー
- 回答日時:
「アプリケーションを停止せずサイトを停止」というのが具体的にどのような手順なのかわからないのですが、手元のシステム(IIS7.5/Win2008R2server)で、World Wide Web Serviceを強制停止してみても、メモリプールやCPU占有は発生しません。
世の中に、IIS7.5+ASP.NET4 Web Formms+ODP.NETで構築されたシステムは大量に存在し、しかも業務用途でクリティカルな要件で動作しているものも数多いはずなので、根本的なバグである事は考えられません。事象の切り分けが必要かと思います。
・ODP.NETなしのアプリケーションでも同じ事象が発生するか?
・DAOによる変化はあるか?(DataReader、TableAdapter、EntityFrameworkなど)
・「アプリケーションが少しでも動いた後’というのはODP.NETと無関係か?
・(プログラム中)usingによるリソースやトランザクションの開放は確実に行っているか?
など、突っ込みどころは多いです。
この回答への補足
ありがとうございます。
おっしゃるとおり、切り分けのために時間を割いて、機能的な差異を作り、境界点を調査するのが筋とは思うのですが、あまりにも単純に出るので、ひょっとすると、結構メジャーな障害なのかもとも思い、経験のある方がおられればと思い質問させていただきました。
状況を加筆すると、
ODP.NETは、OnInitでコネクションを接続し、
OnUnloadでコネクションを解放しています。
Global.asaxのApplication_Startでlog4jの初期化をかけて、Application_endでlog4jのシャットダウンをかけているのが特徴です。
ちょっとでも動かしたとは、
iis起動後、login画面を表示しただけですが、
上記のlog4jの初期化、odpのコネクション接続、切断は走行しています。dbアクセスは一切ありません。
そのあとiisのサイト停止を行ったところで、
ワーカープロセスが100%になってしまった、
というところです。
現在本システムは本番にはいっていますが、
運用中のワーカープロセスが100%になる事象が
出ていないのが救いです。
ワーカープロセスが100%になる現象の原因はなんとしても
突き止めるつもりですが、残念ながら今回は、時間切れで見切り発車しています。
以上
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
IISがフリーズ
Microsoft ASP
-
CPU動作消費やメモリ消費などの過去の履歴を参照することはできますか?
Windows Vista・XP
-
エクセルのセル内の余白の設定って出来るのでしょうか?
Excel(エクセル)
-
-
4
セキュリティの警告が出ないようにするには。
Windows Vista・XP
-
5
CloseとDisposeの違い
Visual Basic(VBA)
-
6
一つのテーブルだけを復元(リストア)する方法を教えてください
SQL Server
-
7
データを削除しても表領域の使用率が減りません
Oracle
-
8
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
JAVAプログラムをWEB表示させる...
-
Tomcat ManagerでのWAR更新につ...
-
java3dが動かない
-
unzip32.dllの利用について(64b...
-
Webアプリケーション
-
意味が分からないエラー
-
IISワーカープロセスが原因でCP...
-
HTMLアプリケーションの作成
-
JSPファイルで生じるエラーをど...
-
MSCOMCTL.OCXのアップデートの方法
-
URLDownloadToFileのコピペで64...
-
エクセルVBAを動かすノートPC...
-
リアルプレイヤーの古い(以前...
-
Javaを仕事で使うには、J...
-
Selenium/VBA/Chrome エラーで...
-
JavaとAndroidアプリ(Java)違...
-
VBはどのくらいで習得するもの...
-
エクリプスのプログラミングに...
-
OpenForm
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
IISワーカープロセスが原因でCP...
-
unzip32.dllの利用について(64b...
-
JavaAppretは
-
sandboxとは?
-
ウィンドウを最小化した際の制...
-
プラグインとパッチの違いは?
-
Ctime
-
forte community or j builder ...
-
Visual Basicで通信アプリケー...
-
C#のWindowsフォームアプリケー...
-
VBで作ったものを人にやらせる...
-
Java 購入検討
-
Google App Engineのアップロー...
-
.NET Frameworkとvb.net
-
RSA署名付きアプレットの作...
-
VB.netでxml-rpcの使用は可能??
-
帳票出力について
-
TitaniumでIphoneアプリを終了...
-
JavaでMDB
おすすめ情報