我有一个spring应用程序,它使用MySQL,PostgreSQL和Bing的位置Web服务等多种服务。它们都工作正常,我有一些单元和集成测试,以确保它们正确地工作。
我昨天被要求为每个服务创建一个keepalive页面,告诉他们服务是否可用,以便我的系统管理员可以从nginx调用这些页面。
我知道我可以使用方法创建一个新的控制器来验证每个服务,但这是最好的方法吗?我想他会经常想要进行这些检查。如果有人有任何建议或链接获取更多信息,我会很感激。
谢谢
答案 0 :(得分:1)
我会为此做一个不同的路线,你可以像这样创建一个弹簧服务
@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>