#c# #asp.net #azure
#c# #asp.net #azure
Вопрос:
Я ищу решение, чтобы узнать, запущена ли конкретная служба или нет в веб-роли Windows Azure.
Я разработал и развернул два приложения в Windows Azure. Первое — это мое основное веб-приложение, а второе — для размещения службы (простое консольное приложение, поместите в каталог bin и запустите его).
Теперь из моего основного веб-приложения я хотел бы выполнить smoke-тест, чтобы определить, запущена ли моя служба или нет.
Я был бы рад получить предложения о том, правильно ли я это делаю или существуют более сложные подходы.
Спасибо Arun.
Комментарии:
1. Ваш вопрос не очень понятен. Под «службой» вы подразумеваете службу Windows? Веб-служба, размещенная в IIS? Или что-то еще?
2. простое консольное (оконное) приложение и exe-файлы и файлы конфигурации помещаются в каталог bin webrole и запускают exe
Ответ №1:
В целом рекомендуется разрабатывать службы, включающие в себя какой-либо вызов метода «отчеты о состоянии» или «проверка работоспособности».
Это становится еще более важным при работе в размещенной инфраструктуре, такой как Azure, поскольку у вас может быть много доступных экземпляров службы.
По крайней мере, это должно вернуть ответ «OK», если служба доступна. В зависимости от того, что делает служба, и ее зависимостей, она может пойти дальше и вернуть
- номер версии службы и любых зависимых служб, баз данных и т. Д.
- запущены ли также зависимые службы, например, базы данных, хранилище таблиц и т. Д.
- физическое имя и IP-адрес компьютера (полезно для отладки)
- время сервера (часто важно в виртуализированном приложении)
- данные среды, такие как параметры конфигурации
Вы также можете захотеть дополнить обычные показатели диагностики Azure некоторыми своими собственными, такими как свободное место на диске, количество запросов в секунду, средняя скорость ответа в секунду за последние пять минут и тому подобное.