2

イントラネット インターフェイスの Web ページを介して開始される長時間 (何時間も) 実行されるタスクがあります。これは ASP.Net 3.5 プロジェクトです。もちろん、スクリプトのタイムアウトを延長して、ページを数時間実行することもできますが、これは完全な解決策ではないと思います。IIS によっていつでもリセットされる可能性があるため、長時間実行されるタスクは Web アプリケーション プールの子であってはならないことをどこかで読みました。解決策を探して、Quartz.Net について少し読みましたが、ほとんどの例は定期的なジョブについて語っています。ユーザーが要求したときに一度だけ実行する必要があるタスクにも適しているかどうか疑問に思っていました. または、別のより良い解決策はありますか?

また、Quartz.Net が適切な方法である場合、Windows サービスとして実行する必要がありますか?それとも、Global.asax を使用して ASP.Net Web サイトによって生成される必要がありますか?

4

1 に答える 1

1

Quartz.net は、このシナリオでうまく機能します。Quartz.net で 1 回限りのジョブをスケジュールし、必要なだけ実行させます。職場では、これがまさに私たちの仕事の多くを実行する方法です。

ただし、Quartz.Net を Windows サービスとして設定する必要があります。IIS は Web アプリをリサイクルします。Web アプリ内で Quartz.net を実行すると、IIS によって Web アプリと共にリサイクルされます。

于 2013-04-09T11:58:07.323 に答える