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で質問しましょう!
似たような質問が見つかりました
- デスクトップパソコン pcが1日に3-4回ほどフリーズするようになりました。 ゲームのプレイや特定のサイト(Twitchな 1 2023/06/16 04:25
- その他(ソフトウェア) F-BASICで計算中の実行が中途で勝手に止まり、大変困っています。 2 2023/03/02 16:15
- Visual Basic(VBA) フレームワーク「4.8.1」で、[Sub Main]が動かない。助けて下さい 3 2022/11/14 15:40
- デスクトップパソコン CPUの温度 8 2022/07/13 18:59
- ドメイン・サーバー・クラウドサービス VPSの会社から高負荷のためインスタンス停止のお知らせが来た。どうすれば・・・ 2 2023/02/20 16:03
- ノートパソコン 4Kの外部モニターに出力すると動作が重くなります 私のPCのスペック VivoBook S15 S5 2 2023/06/22 00:42
- 画像編集・動画編集・音楽編集 PowerDirector21 動画出力時のCPU稼働率が急に下がってしまう原因を教えてください 2 2023/03/30 20:54
- 政治 最近の異常気象はCO2が原因ですか?また、太陽光パネル設置の義務はいかがですか? 11 2023/07/28 12:00
- その他(OS) OSとCPUの関係について 2 2023/05/04 23:33
- CPU・メモリ・マザーボード Windows11アップデート後の不具合(メモリ不足)について 9 2023/01/04 11:34
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
IISのログに出力される「GET」と「POST」の意味
セキュリティソフト
-
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
CPU動作消費やメモリ消費などの過去の履歴を参照することはできますか?
Windows Vista・XP
-
-
4
IISがフリーズ
Microsoft ASP
-
5
【C#/Java?】try-catchでcatchせずにfinallyは一般的?
その他(プログラミング・Web制作)
-
6
他のデータベースとのテーブル結合
SQL Server
-
7
System.IO.Directory.GetFilesの順番
Visual Basic(VBA)
-
8
重複するキーから一番古い年月日のデータのみ取得したい
PostgreSQL
-
9
cerファイル、pfxファイルの基礎知識について
その他(コンピューター・テクノロジー)
-
10
ODP.NETのバージョン確認
Oracle
-
11
PostgreSQLで外部DB内のテーブル参照方法を教えてください
PostgreSQL
-
12
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
13
SQLサーバー接続 特定のPCがWindows認証出来ない
SQL Server
-
14
【DB】同じトランザクション内でupdateとselectをしたときの結果値
その他(データベース)
-
15
メモリ使用量の合計が合わない
Windows 10
-
16
ftpサーバー 接続できない
Windows 10
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
IISワーカープロセスが原因でCP...
-
プラグインとパッチの違いは?
-
このVBAでExcelアプリケーショ...
-
JAVAアプレットとか。
-
Javaセキュリティによってブロ...
-
C#のメモリマップドファイルに...
-
AccessとVBの違いについて
-
javaで3D-CAD作れますか?
-
Java(Servlet,JSP)を使用して...
-
VB.netでxml-rpcの使用は可能??
-
unzip32.dllの利用について(64b...
-
ウェブサイトのアクセスログに...
-
CrystalReportsのバージョン確...
-
複素関数はどこはあんまりやら...
-
使用しているJUnitのバージョン...
-
VBAの「for i=1 to cells(…」...
-
今年28歳女性 プログラマー未...
-
JavaとAndroidアプリ(Java)違...
-
Javaでのエラーについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
IISワーカープロセスが原因でCP...
-
unzip32.dllの利用について(64b...
-
プラグインとパッチの違いは?
-
C++からC#へ
-
C#のメモリマップドファイルに...
-
32ビットのアプリで、64ビットO...
-
appleスクリプトでアプリケーシ...
-
ASP(VB).NETでの背景色変更
-
RTT計測
-
予約システムの開発ツール
-
VBとVBAの違いについて
-
帳票出力について
-
Javaの種類ってどんだけあるの?
-
意味が分からないエラー
-
Javaセキュリティによってブロ...
-
作ったアプレットを自動でアプ...
-
ログオフ中でもアプリケーショ...
-
javaのソースの呼び方
-
GDIはいつ使われていますか?
おすすめ情報