- PR -

Webサービスの呼び出しで止まってしまうことがある

1
投稿者投稿内容
ぼやっきー
会議室デビュー日: 2004/11/04
投稿数: 11
投稿日時: 2007-02-09 09:43
VS2003、.NET Framework1.1(SP1)の環境で、WindowsフォームからWebサービスを介してサーバサイドでDB処理するようなごく一般的なシステムなのですが、まれに、Webサービスの呼び出しで停止してしまうことがあります(言語はVB.Netです)。

調査したところ、Webサービスのインスタンス生成部分で停止しており、更に追っていったところ、WebサービスのVBソース(Reference.vb)のコンストラクタ内にある、「MyBase.New」停止していることがわかりました。

同様の事象が起こった方はいらっしゃいますか?
また、解決手段をご存じの方はいらっしますか?


この事象は毎回起こるわけではなく、どうもPC起動時の初回に出やすい傾向があります。ただ実行環境のメモリやHDDが全く不足しているような状態ではありません。

また、サーバを実際に物理的に分け、Releaseビルドしたモジュールを使用したときも同様に発生するときがあるようです(これはマタ聞きの話ですが。。。)

[環境補足]
OS:WindowsXPPro(SP2)、MEM:512MB、IIS 5.1
Makoto
大ベテラン
会議室デビュー日: 2004/03/31
投稿数: 133
投稿日時: 2007-02-14 13:27
参考程度の情報です。

>どうもPC起動時の初回に出やすい傾向があります。

数年前に、下記環境でWebサービス(C#)を作成したことがあります。

[環境補足]
OS:Windows2003SV(SP1)、MEM:512MB、IIS 6.0+.NetFramework1.1

『止まる』という現象がどういうことをいわれているのかわかりませんが、
IISがアプリをロードする時(初回のみ)は、起動が遅いということは
私も経験しました。

これはIISの設定でロードしたアプリの『キャッシュ期間』を
長くすることで初回のみ起動が遅いという形で対処したことがあります。
(あまり良い対処ではありませんが...)

以上です。
dotnetmemo
常連さん
会議室デビュー日: 2006/04/29
投稿数: 24
投稿日時: 2007-02-14 22:15
Webサービスを利用する時に送受信するスキーマのXmlシリアライズするためのクラスを動的に作成します。この時に以下の問題でハングしているようにみえるためかもしれません。

XmlSerializer クラスから起動された csc.exe が一定時間応答を停止する場合がある
http://support.microsoft.com/kb/899153/ja

たしか、10分ぐらいするとタイムアウトしてエラーになったと思います。
ぼやっきー
会議室デビュー日: 2004/11/04
投稿数: 11
投稿日時: 2007-02-15 11:09
皆様、ご回答ありがとうございます。
(もう半ばあきらめていました)

まさに、dotnetmemoさまのご回答のとおりだと思います。

というのも、この事象が発生したとき、大抵アプリを強制終了していたのですが、
事象発生後、そのPCをシャットダウンするときに、csc.exeを強制終了するかの
メッセージが出ていたことを思い出しました。
※このときにcsc.exeが何なのか調べていないということに問題がありますね(^^;)

ただ、10分を超えたあとにシャットダウンしたときも発生していたような。。。
とはいえ、早速、プリコンパイルすることでどうなるかやってみます。
=>コマンドプロンプトでIMEが使えなくするというのは論外なのでやめます。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)