Веб-сервис для базы данных / статуса веб-сайта

2

В настоящее время я пытаюсь создать (более простой вариант) веб-сайт статуса, похожий на Amazon Service Health Dashboard

В принципе, мне нужно подключиться примерно в 3 центрах обработки данных и к нескольким веб-сайтам с хотя бы сообщением "Вверх/Вниз".

В основном я знаком с С# и некоторым веб-программированием. Я немного знаком с веб-сервисами, и похоже, что это был бы хороший способ реализовать это. Я могу использовать Google через учебные пособия для отдельных частей, но я не уверен, как будет выглядеть обзор чего-то подобного.

Как я понимаю, это будет разбито на эти части:

  • Статус Веб-сайт - ASP.NET
  • Веб-сервис - С#/ASP.NET
  • Некоторая программа для отправки статуса веб-службе - С#?

Для статуса веб-сайта статус-сервер просто запустит script, чтобы проверить, возвращает ли URL-адрес ошибку.

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

Приветствуется всякая помощь на высоком уровне. Спасибо.

Теги:
database
web-services

2 ответа

2
Лучший ответ

Самый простой способ - начать с определения вашего здоровья.

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

Создайте веб-службу для работы на этом надежном сервере для измерения этих критериев. Затем приложите меры к вашему веб-сервису после принятия решения о том, как вы должны возвращать результаты на веб-сайт.

Затем веб-сайт может использовать результаты вызова этих служб для обновления панели мониторинга состояния. Он может использовать AJAX для вызова служб во всех центрах обработки данных асинхронно.

Это немного усложняется, если вам необходимо включить действия, основанные на статусе центра обработки данных. Например, вам может понадобиться кнопка для запуска базы данных, если база данных окажется недоступной.


EDIT: Я также хочу убедиться, что вы знаете о продуктах, таких как System Center продукты из Microsoft. Они могут быть чрезмерными для того, что вы делаете, но они предоставляют стандартный гибкий механизм мониторинга состояния центра обработки данных и принятия мер для устранения проблем. Также см. http://www.codeplex.com/dfo.

  • 0
    Хорошо, это имеет больше смысла. Так, например, Дата Центр # 1 работает на SQL Server. Центр обработки данных № 2 работает под управлением IIS. Когда пользователь получает доступ к сайту состояния работоспособности, он запускает веб-службы, расположенные в центрах обработки данных № 1 и № 2. Центр обработки данных № 1 пытается войти в базу данных, а затем возвращает успех / сбой. Центр обработки данных № 2 проверяет, работает ли IIS, затем возвращает статус. Позволит ли этот метод также узнать, не работают ли веб-службы из-за отсутствия ответа?
  • 0
    Это так, но я предлагаю вам добавить для этого определенный критерий «здоровья». Добавьте операцию «AreYouUp» в веб-сервисы. Эта операция должна просто вернуть true. Если это время истекло, вы можете быть уверены, что веб-служба не работает.
Показать ещё 3 комментария
1

Я также хотел упомянуть, что IPSwitch производит продукт под названием " WhatsUpGold", который делает именно это. Я использую его в течение последних 4 лет, и он, вероятно, может делать все, что вам нужно. Самое главное, это очень выгодно! Я версия позади, так как мне не нужны какие-либо новые функции! Он поддерживает распределенную многосайтовую сеть (агент на каждом сайте контролирует состояние/работоспособность и отправляет обратно в ваше основное местоположение/концентратор).

* Как упоминалось выше, ключ к мониторингу состояния устройства определяет его здоровье. Просто получить статус вверх или вниз недостаточно, так как многое другое; задержка пинга, использование диска, использование процессора и т.д. будут основаны на вашей уникальной среде.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню