asp.net - 强制快速失败保护

标签 asp.net asp.net-mvc iis

我正在尝试在我的服务器上测试一些配置更改,以处理我的应用程序池由于快速故障保护启动而关闭的情况。我正在尝试做的是配置“Shutdown Executable”设置以运行

"appcmd start apppol <myapppool>"

在快速失败保护停止应用程序池之后。在我们真正找出问题的根本原因之前,这是一个临时解决方案。

我写了一个小的 MVC 应用程序,只要调用唯一的 Controller 操作,它就会抛出异常。发生这种情况时,我会在事件日志中看到以下警告:

Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 10/7/2014 10:46:01 AM 
Event time (UTC): 10/7/2014 2:46:01 PM 
Event ID: bba339cfcab74ffe9cb4292c746203c2 
Event sequence: 4 
Event occurrence: 1 
Event detail code: 0 

但是,这不足以触发快速失败保护。有谁知道是什么原因导致快速故障保护触发?或者更好的是如何使与 mvc 请求相关联的工作进程崩溃?

最佳答案

您可以创建导致 native 进程失败的操作,例如(适当的)堆栈溢出。

public class AdminController
{
    [Authorize(Roles="Administrator")]
    public ActionResult FailHard()
    {
        //StackOverflow
        return FailHard();
    }
}

然后在以管理员身份登录时点击/admin/failhard。

如果您在生产站点上启用该 URL,请务必小心。内置一些保护措施是明智的,例如采用需要提供今天日期的参数以避免意外激活。

关于asp.net - 强制快速失败保护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26241989/

相关文章:

javascript - 为什么这个 javascript 不执行

asp.net-mvc - TempData 始终为空

iis - ASP.NET Core 无法在 IIS 下运行 : HTTP Error 500. 0 - ANCM In-Process Handler Load Failure

asp.net-mvc - 如何将 HTML 表单转换为 C# 以用于 PayPal 订阅

php - 通过 Windows 身份验证登录时,我应该信任 php 变量 $_SERVER[AUTH_USER] 吗? IIS Intranet 托管应用程序

windows - 设置iis的语言

c# - 如何在 ApplicationUserManager 上使用 Identity 2.2 并且不使用 ILookupNormalizer

asp.net - 如何部署预编译的 ASP.NET Web 应用程序?

asp.net - Entity Framework 可以生成从外键到父表中 GUID 的映射吗?

c# - asp.net 隐藏重定向与方向 url