Webアプリから定期的なタスクの実行 & Webアプリを終了させない方法

Forcing an ASP.NET Application to 'stay alive'

Webアプリケーションの中で定期的にメールをチェックしたい、というような状況はよくあると思います。
通常はメールチェック用のプログラムを別に作成し、定期的なタスクとして実行させるのが一般的かと思いますが、Webアプリの中からそのような作業を実行させるためのサンプルが提示されています。
別スレッド起こして実行するというのは確かにうまい方法ですね。

また、ASP.NETのアプリケーションは一定時間アクセスがないと終了してしまいます。
次にアクセスされたときに起動のための時間がかかってしまうのを防ぐために常に起動させておきたい、というのもよくある要求です。
それを実現する方法として、終了時に指定されたURLにアクセスするような仕組みを実装しています。

結構このサンプルは使い道がありそうです。

公開 10-05-2007 06:41 投稿者 ono
カテゴリ:

コメント

 

ishisaka said:

こんなもんASP.NETでどう実現するんじゃごらぁといわれそうですが、WEBの常時接続技術としてはCometというものがあります。

Lingr and Comet - 技術解説編
http://blog.japan.cnet.com/kenn/archives/003149.html
5月 10, 2007 20:00
 

aiueo said:

(リンク先は未チェックですが)
共有サーバーで皆がそれやりだしたらちょっと困る・・・
(w3wp.exe 起動したまま、RAM 喰われたまま)

5月 14, 2007 0:36
 

ono said:

困るかなぁ?
それなりに訪問数のあるサイトならわざわざこういった仕組みを入れなくても常時起動しているわけですし。
ホスティングしてるような場合は、むしろ常時起動していることを前提に環境整備されてないと、使うほうとして困っちゃうかな。
5月 15, 2007 5:21
この投稿に対する新規コメントはできません
SkinName:iroha_Blog2
Powered by Community Server, by Telligent Systems