[解決済み] IISファイルのダウンロードがハングアップ/タイムアウトする - sc-win32-status = 64
2022-02-14 18:30:50
質問
HTTPでファイルをダウンロードしようとすると、大量の"hangs"が発生する理由について、何か考えがありますか?
- サーバーはIIS 6
- ダウンロードされるファイルは、Webページではなく、バイナリファイルです。
- TrueUpdate や FlexNet Web 更新パッケージ、基本的な HttpWebRequest/HttpWebResponse ロジックを実行し、応答ストリームを使用してダウンロードするだけのカスタム .NET アプリなど、複数のクライアントがハングアップします。
- IIS ログファイルの署名成功時 200 0 0 (sc-status sc-substatus sc-win32-status)
- 失敗の場合、エラーシグネチャは200 0 64
- sc-win32-status の 64 は "指定されたネットワーク名はもう利用できません" です。
- FirefoxでURLを指定すると、毎回正常にダウンロードできます(おそらく、ボンネットの下で何らかの再試行ロジックが発生しているのでしょう)。
この時点で、私のサーバーに何かおかしなことがあってこれらのエラーを投げているのか、それともこれは通常のネットワーク動作で、私はより障害に強いクライアントを使う(または書く)必要があるのか、どちらかのように思われます。
何か思い当たることはありますか?
解決方法は?
おそらく、あなたの問題は、あなたが返信コメントで推測したように、ISPとの低レベルのネットワークの問題だったのでしょう。私もIISで同様の問題を経験しており、ログファイルに200 0 64という謎の行が表示されることがあり、それでこの投稿を見つけた次第です。ちなみに、これは私のsc-win32-status=64の理解ですが、間違っていたらどなたか訂正していただけると幸いです。
- sc-win32-status 64は、"指定されたネットワーク名はもう利用できません。"という意味です。
- IIS は最終応答をクライアントに送信した後、クライアントからの ACK メッセージを待ちます。
- 時々、クライアントは最終的なACKをサーバーに送り返す代わりに、接続をリセットすることがあります。これは優雅な接続の終了ではないので、IIS は中断を示すために "64" コードをログに記録します。
- 多くのクライアントは、TIME_WAIT/CLOSE_WAITのままではなく、ソケットを解放するために、接続が終了した時点で接続をリセットします。
- プロキシは、個々のクライアントよりも頻繁にこれを行う傾向があるかもしれません。
関連
-
[解決済み] Androidでファイルをダウンロードし、ProgressDialogで進捗を表示する。
-
[解決済み] HTTPでファイルをダウンロードするには?
-
[解決済み] ファイルをダウンロードし、別のファイル名で保存するwgetコマンド
-
[解決済み] HTMLボタンやJavaScriptをクリックしたときにファイルをダウンロードさせる方法
-
[解決済み] Pythonで大きなファイルをリクエストでダウンロードする
-
[解決済み] ファイルのダウンロードにContent-Type: application/octet-streamは必要ですか?
-
[解決済み] jQuery.Ajaxでファイルをダウンロードする
-
[解決済み] URLからサーバーにファイルをダウンロードする
-
[解決済み] ブラウザがファイルのダウンロードを受信したことを検出する
-
[解決済み】JavaScript/jQueryを使ったファイルのダウンロード
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] リソースを "アンキャッシュ" する
-
[解決済み] IISファイルのダウンロードがハングアップ/タイムアウトする - sc-win32-status = 64
-
[解決済み] X-Forwarded-Forヘッダーが表示されないブラウザの理由
-
[解決済み] HTTPの "Host "ヘッダーとは何ですか?
-
[解決済み] HTTP POSTリクエストでは、どのようにパラメータが送信されるのですか?
-
[解決済み】全てのブラウザで、Webページのキャッシュを制御するには?
-
[解決済み】HTTP 1.0 vs 1.1
-
[解決済み】CURL コマンドライン URL パラメータ
-
[解決済み】HTTPの "Content-Type "ヘッダーのすべての可能な値は何ですか?
-
[解決済み] URLマトリックスパラメータとクエリパラメータの比較