How to put ASP.NET site offline if critical services are not available
How would you go about placing the site off-line if the database is down or the database adapter is missing / failed to load / etc.?
I am asking in the context of ASP.NET MVC 3 but this can apply for any ASP.NET site.
Let's say somewhere around App_Start you load an assembly for data access and this is missing and/or something else fails. In this case the site can't actually function.
I'm looking for a decent/elegant way to place the site in "Maintenance mode" just like App_Offline.htm wo开发者_运维知识库rks.
catch (ReallyBadException ex) {
Utilities.EmailAdministrator();
File.Copy(@"c:\templates\App_Offline.htm", @"c:\path\to\website\App_Offline.htm");
}
Check out Circuit breaker pattern
Maybe too general for you (i am not sure if you are looking for conceptual solution or ASP.NET specific) but it can help you.
精彩评论