- PR -

基になる接続が閉じられました

投稿者投稿内容
常連さん
会議室デビュー日: 2003/11/05
投稿数: 31
投稿日時: 2004-08-16 11:52
皆様、お疲れ様でございます。

突然ではありますが、ご質問させてください。

IIS6.0を使用して、WEBサービスを利用しようとしているのですが
 (WEBサービス先に接続して処理を行い、ファイルを戻すというサービス)
その際に、上記のエラー「基になる接続が閉じられました」が発生し、
ファイルが戻ってきません。
おそらくIISの設定のあたりだと思うのですが、
要求キューの制限をはずしても、
アイドルタイムアウトを伸ばしても、
接続のタイムアウトを伸ばしても、
ワーカープロセスのリサイクルを伸ばしても、
どうも切断されてしまいます。

上記のエラーに関してお心あたりのある方、関連したURLをご存知の方がおられることを
鼻をのばして、心より祈っております。
ヌシ、大ベテラン、常連さん、えムナウさんの皆々様、どうぞよろしくお願いします。
えるにえ
会議室デビュー日: 2001/09/21
投稿数: 10
投稿日時: 2004-08-16 12:38
状況が見えないのですが、
私が「基になる接続を閉じ」られてしまうのは
・認証が通らなくて接続を拒否された
・何らかのエラーで接続が終了した
 (WebRequestクラスのプロパティに値を代入する順序によっては
  WebResponseクラスでデータを受け取る前にエラーで接続が閉じられるなど)
ときですね。




えムナウ
大ベテラン
会議室デビュー日: 2004/06/10
投稿数: 187
お住まい・勤務地: 東京
投稿日時: 2004-08-16 14:05
「ヌシ、大ベテラン、常連さん」は投稿数によるランクです。
「えムナウ」は個人のハンドル名です。
お間違えの無いようお願いいたします。

ご指名があったのですが残念ながらこの件に関してはお答えでません。

IISの動作しているマシンでLANの影響なしにやってみたらどうでしょうか?
またそのときに実行するのが管理者権限かどうかでも違ってくるかもしれません。
切り分けになるかと思います。

_________________
えムナウ Microsoft MVP for Visual Developer - C#,2005/01-2007/12
えムナウのプログラミングのページ Blog1 Blog2
常連さん
会議室デビュー日: 2003/11/05
投稿数: 31
投稿日時: 2004-08-16 17:10
えるにえさん、えムナウさん、えみねむさん
かってなご指名にもかかわえらず、ご返答いただきありがとうございます。

わたくしもこのエラーが発生した際、認証、もしくは権限の問題かと思いまして
原因追求していたのですが、
ひとつ情報不足であったので、追加します。

実はこのエラー、処理件数が1件や300件ほどの少数データであれば正常終了して
ちゃんとファイルが戻ってくるのです。
ところが10000件を越すデータ量になると、掲題のエラーが発生し、ファイルが戻って
こないのです。

こういった現状から、認証や権限の問題ではなく、
おそらく、接続時間の問題で、長くなるとWEBサービスの接続(IISの接続)が切られて
しまい、ファイルを返す場所がなくなって起こっているのだと考えております。

またLANの影響を受けない環境でも行ったのですが、やはり同様のエラーになってしまいます。
なにかお心当たりや、関連したURLなどがございましたら、本当によろしくお願いします。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2004-08-16 21:09
引用:

実はこのエラー、処理件数が1件や300件ほどの少数データであれば正常終了して
ちゃんとファイルが戻ってくるのです。
ところが10000件を越すデータ量になると、掲題のエラーが発生し、ファイルが戻って
こないのです。
おそらく、接続時間の問題で、長くなるとWEBサービスの接続(IISの接続)が切られて
しまい、ファイルを返す場所がなくなって起こっているのだと考えております。



具体的にどれくらいの時間を経過するとエラーになっていますか?

数十分オーダーの接続を行っているとすると、基本的にはどうしようもありません。
Web というものの仕組み上、Webサーバだけでなく伝送経路やクライアントにもタイムアウトが仕掛けられていて、いくつかは設定変更することができません。

分割して転送するなど、何か工夫をしないと回避できない可能性が高いです。
_________________
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
//
// @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/
常連さん
会議室デビュー日: 2003/11/05
投稿数: 31
投稿日時: 2004-08-17 09:36
渋木宏明(ひどり)さん、重要な情報、本当にありがとうございます。

実は、1時間30分ほどの処理(件数にして2000〜1万件ほど)のオーダになると
発生するのですが、ひどりさんの考えでは、その間の接続がWEBの仕組み上、保つことが
できないということですね。

知識不足で申し訳ありません。大変貴重なご教授感謝いたします。
そのあたりの詳細な情報、URL等等がございましたらお教えいただければ
幸いでございます。どうかよろしくお願いします。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2004-08-17 11:34
引用:

実は、1時間30分ほどの処理(件数にして2000〜1万件ほど)のオーダになると
発生するのですが、ひどりさんの考えでは、その間の接続がWEBの仕組み上、保つことが
できないということですね。



絶対無理です。
あと、ASP.NET は出力をいったんメモリストリームにバッファしてからクライアントに吐き出す仕様なので、転送データ量の総量が決して2GBを超えることはできませんし、実際にはせいぜい1GB程度でメモリ不足の例外が発生するはずです。

引用:

そのあたりの詳細な情報、URL等等がございましたらお教えいただければ
幸いでございます。どうかよろしくお願いします。



「Web」はたかだか1個の技術で成立しているわけではないので、事情は複雑です。

まず最初に見るべきは w3c の HTTP 仕様ですが、それでWebのすべてが定められているわけではありません。
また、仕様で定められているからと言って、IIS やプロクシ、IE などが仕様どおりの実装になっている保証もありません。

_________________
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
//
// @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/
常連さん
会議室デビュー日: 2003/11/05
投稿数: 31
投稿日時: 2004-08-17 18:30
渋木宏明(ひどり)殿。本当にありがとうございます。

ほかのスレッドにも、やはりASP.netの制限
、長時間 (90分、データ件数100万件)
でお悩みの方がおられましたが、ひょっとしたらmachineConfigあたりの
設定で変更できるかという情報もございました。

ちょっと挑戦して参ります。

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