Лучший способ протестировать сервисы приложений вне приложения - PullRequest
0 голосов
/ 08 июня 2011

У меня есть приложение Spring, которое использует несколько сервисов, таких как MySQL, PostgreSQL и веб-сервис локации Bing. Все они работают нормально, и у меня есть несколько модульных и интеграционных тестов, чтобы убедиться, что они работают правильно.

Вчера меня попросили создать страницы поддержки активности для каждой службы, которые будут сообщать, доступна ли служба или нет, поэтому мой системный администратор может вызывать эти страницы из nginx.

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

Спасибо

1 Ответ

1 голос
/ 08 июня 2011

Я бы выбрал другой путь для этого. Вы можете создать сервис Spring, как этот

@Component
public class MonitorService 
{
    public void checkServices()
    {
     //if(problem) send an e-mail notification, 
         //you can configure spring MailSender to do that
    }
}

Теперь вы создаете планировщик задач Spring для запуска этого монитора с фиксированным интервалом

<task:scheduled-tasks>
  <task:scheduled ref="monitorService" method="checkServices" fixed-delay="1000"/>
</task:scheduled-tasks>
...