Мониторинг нескольких экземпляров службы Windows в кластере компьютера - PullRequest
0 голосов
/ 21 августа 2009

Я реализовал приложение-службу Windows, которое будет развернуто на нескольких машинах и запущено одновременно для обработки задач в центральной очереди. У меня есть файл журнала для каждого запущенного экземпляра службы. Но я хочу иметь возможность отслеживать все экземпляры службы и периодически получать информацию о приложении, такую ​​как имя и идентификатор задачи, обрабатываемой каждой службой.

Я думаю добавить веб-сервис на каждую машину, чтобы предоставить доступ к этой информации, доступной только для чтения, и написать другое приложение (возможно, веб-приложение), чтобы получать эту информацию по сети и красиво отображать ее. Но это хороший подход? Есть еще мысли? И я предпочитаю не использовать какой-либо готовый продукт. Пожалуйста, дайте ваш совет.

Заранее спасибо!

[Я пытаюсь представить свою реализацию ниже в качестве ответа. Читайте, если вам интересно. Спасибо.]

Ответы [ 3 ]

1 голос
/ 21 августа 2009

Если бы у вашей службы был API для извлечения этой информации через сеть, было бы довольно легко создать клиент, который проверял бы состояние всех запущенных серверов.

Это то, сколько сервисов вычислительного кластера работает - они работают, и клиент может планировать задачи, а также запрашивать их. Здесь можно использовать любую технологию, хотя для .NET WCF, вероятно, сделает это довольно простым и надежным.

0 голосов
/ 22 августа 2009

В итоге я воплотил нечто очень похожее на то, что предложил Рид Копси.Поскольку приложение уже является службой Windows, я определяю контракт службы / данных для информации, которую я хочу предоставить и разместить WCF в той же службе.Это решение позволяет моему клиенту, будь то планировщик или приложение пользовательского интерфейса, получать информацию со всех экземпляров службы, работающих в кластере.

0 голосов
/ 21 августа 2009

Возможно, это излишне, но посмотрите System Center Operations Manager . Если вы хотите предоставить информацию о стиле «приборной панели» состоянию не только ваших приложений, но и компьютеров и баз данных на многих компьютерах (или в центре обработки данных), SCOM - хорошее место для запуска.

...