Jeff と Joel がポッドキャストで、彼らが「ハートビート」と呼んでいるものについて話し合っているのを聞いたことがあります。このようなものがどのように実装されるかについて、もう少し洞察を得たいと思っていました。誰かが以前にこのようなものを実装したことがありますか?それを何に使用しましたか?
ありがとう!
場所の組み合わせで答えを見つけました。Jeff Attwood が stackoverlowで行ったこととCode Project の記事を参考にして、完全に再利用可能で IC ツールを使用して簡単に接続できるものを作成しました。ここに詳細を掲載しました
基本的に、Web ページを使用してプロセスを開始しますが、プロセスを実行できる頻度に上限を設けます。
このようなもの:
TimeSpan timeSinceLastRun = DateTime.Now.Subtract(lastRunTime);
if(timeSinceLastRun > interval) {
RunCustomProcess();
lastRunTime = DateTime.Now;
}
このようにして、誰か (または何らかのプログラム) が時々そのページにアクセスするようにする必要があります。ページに何度もアクセスしても、プロセスに悪影響はありません..
ASP.NET Health Monitoring を使用して、何かをWebHeartbeatEventに関連付けることができます。
このコード プロジェクトの記事: ASP.NET を使用してスケジュールされたジョブを実行する Windows サービスをシミュレートするで、すべてが説明されています。
Windowsフォームクライアントがあり、WCFサービスがサーバーとして機能するため、クライアントとサーバーの間にそのようなものを実装しています。
ハートビートの目的は、サーバー側から「私はまだ生きている」ということです。
WCF でのハートビートの紹介については、このリンクを確認してください