2011-01-27 2 views

答えて

0

個人的には、私はWebアプリケーションでそれを処理しません。代わりに、私はバックグラウンドで実行されるサービスを持ったり、Windowsのスケジュールを使用してx分/時間ごとに特定のアプリケーションを実行したりします。

しかしASP.NETでは、x時間ごとに関数を呼び出すバックグラウンドスレッドを開始できます。

ここではその上のより多くのです:http://flimflan.com/blog/SafelyRunningBackgroundThreadsInASPNET20.aspx

私はこれが正しい方向にあなたを助け願っています。

2

イベントの設定を可能にするフロントエンドのasp.netサイトに加えて、通知を送信するデータベースにバックエンドサービスを添付する必要があります。このバックエンドサービスは、イベントを最後に処理した時刻を記録する必要があります。定期的に目を覚まし、新しいイベントをすべて処理します。期間は、あなたの回答を「リアルタイム」でどのようにして決定するかによって決まります。 1分ごとに必要な場合があります。

+0

1をまたhttp://quartznet.sourceforge.net/を見て – uvita

0

タイムイベントは、スレッドまたはサービスで処理できます。

頻繁には考慮されていないスレッドやタイマーの欠点は、IISが頻繁に再起動されることで、スレッドとタイマーが再起動されることです。サービスははるかに安定しており、状態データ(現在の時刻など)を追跡することなく、頻繁に自動的に起動します。

0

サービスまたはスケジュールされたタスクがこの問題に最も適していますが、ホスティングプロバイダ(自分でホストしていないと仮定した場合)がこれを許可していない場合や、 .NET 4.0で実行している場合は、常にアプリケーションプールを存続させることができます。

スコット・ガスリーによるこのブログ記事は、これを行う方法を説明します http://weblogs.asp.net/scottgu/archive/2009/09/15/auto-start-asp-net-applications-vs-2010-and-net-4-0-series.aspx

関連する問題