5

ASP.NET が Web ページで応答を生成するのに長い時間がかかる (2 時間以上) という状況に遭遇しています。これは、コードビハインドがしばらく実行されているためです (非常に長くて遅いループ)。

ブラウザ (IE と Firefox の両方) が応答の待機を停止し (約 1 時間後)、一般的な「Web ページを表示できません」というエラーが表示されます (存在しないサーバーに移動しようとした場合に表示されるものと同様)。

同時に、asp.net アプリは続行され (デバッガーで確認できます)、最終的に完了します。

なぜこれが起こるのですか?これに影響を与える web.config の設定はありますか? これを引き起こしているタイムアウト設定が欠けていることを願っています。

多分IEかFirefoxの設定?しかし、サーバーが接続を維持している間、彼らは待っていると思います。

VS からローカル マシンでデバッグ モード (コンパイル debug="true") でアプリを起動しても、これが発生します (したがって、IIS ではなく ASP.NET Dev Server で実行されます)。

ページの生成に時間がかかるのは悪いことですが、この段階では問題ありません。高速化するには多くの余分な作業が必要であり、遅延はそれほど重要ではありません。これは内部で使用されます。

この問題を回避して、ロジックをバックグラウンド プロセスに実行し、AJAX を介して完了したときに通知を受け取るか、デスクトップ アプリやサービスなどにプルすることで再設計できることを認識しています。最終的にはその方向に沿った何かが行われるでしょうが、それは私が今求めていることではありません.

4

4 に答える 4

0

数分かかるプロセスがあるため、別のスレッドをスピンオフし、結果を ftp 経由で送信します。プロセスでエラーが発生した場合は、スタック トレースを含むエラー メッセージを自分自身に送信します。結果を電子メールまたはブラウザ以外の場所で送信することを検討し、スレッドも使用することを検討してください。

于 2009-05-08T14:25:28.437 に答える