2

ストアド プロシージャを呼び出す Web ページがあります。ストアド プロシージャの実行には 5 分ほどかかります。ASP.NET から呼び出すと、HTTP 実行タイムアウト エラーで ~ 2 分 40 秒でタイムアウトします。

web.config ファイルで HTTP タイムアウト プロパティを次のように設定しようとしました。

<httpRuntime executionTimeout="600">

しかし、それは役に立ちませんでした。

どんなアイデアでも大歓迎です。ありがとう

4

1 に答える 1

2

サーバーからのこのような長い応答時間を必要とする可能性のあるページを含む Web アプリケーションを作成しないでください。原則として、10 秒以上かかることがわかっているものはすべて、非同期プロセスとして実行する必要があります。長時間実行されているプロセスに対して「お待ちください」画面を表示する Web サイトを見たことがあると思います。ほとんどの場合、これらのページは、長時間実行されるジョブをバックグラウンド プロセスまたはメッセージ キューに委譲し、ジョブが正常に完了するかエラーになるまでポーリングします。 .

これまでに行ったことがない場合、これは難しい注文のように思えるかもしれませんが、実際に直面しているシナリオを処理するための専門的な方法です。場合によっては、タイムアウトの設定に関係なく、HTTP 要求を中止するようにプロキシ サーバーが設定されているネットワークからクライアントが動作している可能性があります。

これは古いリンクであり、.NET フレームワークではこれを行う別の方法が導入されていると思いますが、実際には、特定のシナリオでは現在でも次のアプローチを使用しています。

http://www.devx.com/asp/Article/29617

于 2013-02-25T21:13:31.800 に答える