0

かなり前のことですが、8年前に話していますが、アプリケーションプールの稼働時間の状態を保持し、次のことができるオブジェクトを保持することで、WindowsサービスまたはSQLServerエージェントの代わりにWebサイトを使用するという概念実証のプロトタイプを作成しました。状態を維持し、たとえば、エージェントのようなタスクのサービスタイマーを保持します。これを実装するには、WebアプリケーションがHTTPを介してそれ自体を呼び出し、その状態をアプリケーションキャッシュに格納します。

私はアドバイスを求めるほどこれを推し進めようとはしていません。私はまだこれを、Webアプリケーションのリマインダー電子メールなどを実行するためのSQLエージェントの合理的な代替手段として考えています。cronジョブ(スケジュールされたタスクサービスタスクなど)や実際のWindowsサービスなども実行できることはわかっていますが、ここで問題となるのは、問題のWebアプリケーションが、開発者がアクセスできない閉じた環境にあり、そのため、SQLエージェントジョブとWindowsサービスの非Web展開をサポートするにはオーバーヘッドが大きすぎます。

繰り返しになりますが、私がここで検討してきたこと以外に、この問題に対する他の解決策はありますか?

4

1 に答える 1

0

私は、cron のようなスケジューリングと状態管理を処理するQuartz.netが好きです。あまり洗練されていないソリューションは、単純な System.Timer を Application_Start に接続するだけです。重要なのは、サイトへのトラフィックを確保する (サイトに ping するタスクをスケジュールする) ことによってアプリ プールが再起動しないようにすることです。IIS 7.5 を使用している場合は、自動開始機能を使用できます。

于 2011-08-18T23:58:30.950 に答える