XML Webサービスで、DBアクセス毎にDBプロセスが増え続けてしまう。

回答済み XML Webサービスで、DBアクセス毎にDBプロセスが増え続けてしまう。

  • 2011年9月7日 10:29
     
     
    毎々お世話になっております。

    WindowsXP-Pro Ver.2002 SP2 上で
    Visual Studio 2005 Enterprise Edition でVB2005による開発を行っております。

    現在XML Webサービスを用いたリッチクライアント環境下で動作するアプリを開発しております。

    また開発環境下ではWebサーバとDBサーバはWin7機で同居しており、開発機とはLANで接続してあります
    (DBはSQL Server 2005 Developper Edition)

    ふとSQL Server の Management Studio で 利用状況モニタ を開いてみると、
    得体の知れないプロセス(内容は下記)がわんさかいるのを見て驚きました。

    システムプロセス:いいえ
    ユーザー:(XML Web サービスからコネクトするユーザ)
    データベース:(XML Web サービスからコネクトするデータベース)
    状態:休止中
    開いているトランザクション:0
    コマンド:AWAITING COMMAND
    アプリケーション:.Net SqlClient Data Provider
    待機時間:0
         :
         :

    根拠はないのですが、XML Webサービスを呼び出す毎に作成されて残ってしまっている
    ように思います。

    またこれらのせいか、DBアクセス時に

    System.Web.Services.Protocols.WebClientProtocolGetWebResponse

    でタイムアウトが発生する事があります。

    仮に悪さをしないとしても、目障り以外の何物でもないので、

    毎回作らないようにする、または作ってしまっても終了時に閉じるようにしたいと思います。

    どのタイミングでどのようにすればよいのか教えてください。

    よろしくお願いします。

    (アップするカテゴリはここでよいのでしょうか?違うようならご指摘ください。)

すべての返信

  • 2011年10月3日 16:33
     
     回答済み

    自己レス です。

    Web サーバー側 のDBアクセスルーチンで、毎回Disconnect & Dispose するようにしました。

    これにより、SQL Server 上に居残る謎のプロセスが消えました。

    また、今のところIISでのタイムアウトも発生しなくなりました。

    どうもお騒がせ致しました。