JeffとJoelはポッドキャストで「ハートビート」と呼ばれるものについて議論していると聞いたことがありますが、これは基本的にWindowsサービスウェブサイトで私は、このようなものがどうやって実装されるのか、さらに洞察を得ることを望んでいました。誰もこれの前にこのような何かを実装して、あなたはそれを何のために使いましたか?Asp.Netで「ハートビート」またはWindowsサービスのような機能を作成する
ありがとうございます!
JeffとJoelはポッドキャストで「ハートビート」と呼ばれるものについて議論していると聞いたことがありますが、これは基本的にWindowsサービスウェブサイトで私は、このようなものがどうやって実装されるのか、さらに洞察を得ることを望んでいました。誰もこれの前にこのような何かを実装して、あなたはそれを何のために使いましたか?Asp.Netで「ハートビート」またはWindowsサービスのような機能を作成する
ありがとうございます!
私は場所の組み合わせで答えを見つけました。私はJeff AttwoodがstackoverlowのためにしたものをhereとCode Project articleとし、完全に再利用可能でIoCツールを使って簡単に接続できるものを作った。私は完全な詳細を投稿しましたhere
WindowsフォームクライアントとWCFサービスがサーバーとして機能するため、クライアントとサーバーの間にそのようなものを実装しています。
ハートビートの目的は、サーバー側から「私はまだ生きている」と言うことです。
チェックHeartbeat in WCF
デッドリンクが死んでいます。 – Gusdor
のための導入のため、このリンクは基本的には、プロセスをキックオフするために、Webページを使用して...しかし、あなたは、プロセスを実行することができますどのくらいの頻度のキャップを置きます。
このような何か:
TimeSpan timeSinceLastRun = DateTime.Now.Subtract(lastRunTime);
if(timeSinceLastRun > interval) {
RunCustomProcess();
lastRunTime = DateTime.Now;
}
あなたがちょうどその時々誰か(またはいくつかのプログラム)を確認する必要があり、この方法は、ページを訪問します。ページを何度も押すとプロセスに悪影響を及ぼすことはありません。
は、lastruntimeのようなヴァールを保管するのに理想的な場所です... global.asaは唯一の場所ですか? –
はデータベースに存在しても、単にHttpApplication状態から来てもかまいません。 –
このコードのプロジェクトの記事:Simulate a Windows Service using ASP.NET to run scheduled jobsはすべて説明しています。
ASP.NETヘルスモニタリングを使用して、何かをWebHeartbeatEventに接続することができます。
あなたの投稿やサイトがなくなったようです... URLを修正する必要があるかもしれませんか? –