我正在为我的ASP.NET MVC 4应用程序制作一个健康检查页面。当网站管理员访问此页面(如http//: myapp.com/healthcheck)时,该页面应该检查数据库可用性和应用程序运行状态。我已经通过打开一个DB连接并检查是否有任何异常来检查db启动和运行状态。应用程序运行状态(如www.myapp.com),我通过向其发送HttpWebRequest请求进行检查。
为此,我添加了新的健康检查控制器/模型/ cshtml页面。它正在如预期的那样运作。
问题是,这个新的健康检查页位于同一个应用程序中,因此如果我的应用程序出现故障(例如,由于web.config中的路由错误或配置错误或任何其他方式),那么我的此健康检查页也不会加载。你能提出一个更好的解决方案/架构/解决这个问题吗?
发布于 2015-11-06 05:38:55
这个健康检查模块应该是一个不同的虚拟目录/网站。如果您在原始应用程序运行的同一台服务器上承载此功能,那么健康检查模块应该在单独的应用程序池下运行。通过javascript/ajax或使用HttpClient/HttpWebRequest从服务器连接原始应用程序。
https://stackoverflow.com/questions/33560019
复制相似问题