将 azure MVC 应用程序置于维护模式的巧妙方法

BZi*_*ink 5 asp.net-mvc azure asp.net-mvc-3

有没有人有任何快速而聪明的方法可以将 Windows Azure 上运行的 MVC 应用程序转变为“维护模式”

我对此没有很大的需求,因为我经常使用天蓝色的临时环境,但有时我确实需要确保应用程序的生产实例中没有用户(主要是数据库更新)。

我希望能够即时执行此操作,而无需上传新代码或交换部署槽。有什么建议么?

Sam*_*eff 3

最友好的方法是登录。当用户进行身份验证时,检查数据库中的维护模式标志,并且不要让他们登录。让活动用户继续使用该应用程序,直到他们注销或会话超时。保留活动日志,以便您可以了解所有用户何时过期。

当然,这意味着从将应用程序置于维护模式到其有效准备就绪需要一段时间,但启动活跃用户并不好。

如果您的应用程序的使用模式使得此方法无法确保在合理的时间内没有任何活动,您可以在此基础上添加超时。经常检查请求的相同维护标志。不必是每个请求,而是每五分钟左右一次。如有必要,您还可以在本地缓存维护模式值一段合理的时间(几分钟)。