Создание функции «Heartbeat» или Windows-Service-Like в Asp.Net - PullRequest
1 голос
/ 24 июня 2009

Я слышал, как Джефф и Джоэл обсуждали в подкасте то, что они называли «сердцебиение», которое, по сути, создает нечто, похожее на запуск службы Windows на веб-сайте. Я надеялся получить больше понимания того, как что-то подобное будет реализовано. Кто-нибудь реализовывал что-то подобное раньше и для чего вы это использовали?

Спасибо!

Ответы [ 5 ]

3 голосов
/ 18 сентября 2009

Я нашел ответ в комбинации мест. Я взял то, что Джефф Этвуд сделал для stackoverlow здесь , а также статью Code Project и сделал что-то полностью пригодное для повторного использования и легко подключаемое с помощью инструмента IoC. Я разместил полную информацию здесь

0 голосов
/ 17 сентября 2009

Вы можете использовать ASP.NET Health Monitoring и подключить что-либо к WebHeartbeatEvent .

0 голосов
/ 24 июня 2009

Обычно вы используете веб-страницу для запуска процесса ... но вы ограничиваете частоту запуска процесса.

Примерно так:

TimeSpan timeSinceLastRun = DateTime.Now.Subtract(lastRunTime);

if(timeSinceLastRun > interval) {
    RunCustomProcess();
    lastRunTime = DateTime.Now;
}

таким образом, вы просто должны убедиться, что кто-то (или какая-то программа) иногда посещает страницу. Попадание на страницу много раз не повлияет на ваш процесс ..

0 голосов
/ 17 сентября 2009
0 голосов
/ 24 июня 2009

Мы реализуем что-то подобное между клиентом и сервером, поскольку у нас есть клиент windows формы и служба WCF действует как сервер.

Цель сердцебиения - сказать «Я все еще жив» со стороны сервера.

Проверьте эту ссылку для введения для Сердцебиение в WCF

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...