私のアプリケーションでは、実行に長時間かかるタスクが完了するまでに約4/5時間かかります。このタスクは、ループを繰り返し実行することにより、CUBEデータサーバーから数百の組み合わせのデータを取得します。IISで特定の時間が経過するとASP.NETコードが実行を停止します
ローカルのVisual Studio 2015から実行している間は正常に動作しますが、アプリケーションサーバーに展開すると、このプロセスは25分後に自動的に停止します。私がCUBEサーバーから監視しているように、私は25/30分後にデータコールが受信されないことがわかります。
web.configで次のように試してみましたが、IISからセッションタイムアウトを20時間に設定しましたが、一定時間後にデータが停止して完全に完了しないため、何も動作しません。
"86400"
コードが
Task.Factory.StartNew(()=> RunManufacturerModuleCache()、 TaskCreationOptions.LongRunning)below-与えている= executionTimeout。 RunManufacturerModuleCache()メソッド1000回の反復のためのループを有し、各反復はCUBEサーバからデータをフェッチ
。
IISで実行時間を延ばすことができる設定がありますか?またはIISで25/30分を超える実行プロセスを実行する方法がありませんか?ありがとう!
ありがとうございます。最初の解決策、つまり0をアイドルタイムアウト(分)に設定すると、私にとって効果的です! –