MVC5网站损坏了几个小时,并需要回收工作

时间:2018-02-11 00:32:55

标签: vb.net asp.net-mvc-5 iis-8 windows-server-2012-r2

我在Windows Server 2012 R2上运行了一个网站 它已经运行了多年的MVC5网站 在过去的几个月里evrey几个小时+(有时可能是几天 - 在一个好的情况下), 网站上的某些页面停止工作 我收到一个错误 的 External component has thrown an exception.

以下是来自事件查看器的日志

Faulting application name: vbc.exe, version: 14.7.2558.0, time stamp: 0x59d41ad3
Faulting module name: KERNELBASE.dll, version: 6.3.9600.18895, time stamp: 0x5a4b1b67
Exception code: 0xc0000142
Fault offset: 0x00000000000ecf30
Faulting process id: 0x26bc
Faulting application start time: 0x01d3a2cb9fe40011
Faulting application path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\vbc.exe
Faulting module path: KERNELBASE.dll
Report Id: dd9550b4-0ebe-11e8-80e9-00155d018d08
Faulting package full name: 
Faulting package-relative application ID: 

让网站再次运行以回收应用程序池的唯一方法。 (只是重启网站不会有帮助)。

问题是网站在回收后需要20-40秒才能恢复正常运行,并且在一天中的中间几次这样做不是一种选择。

以下是一些错误详情:

  • 有时会在日志csc.exe中看到而不是vbc.exe [c sharp compiler vs visual basic compiler](它的ac#项目,但我使用RDLC文件,来渲染som报告,即使用vb编译器)
  • 有时在几个小时之后,有时几天之后发生这种情况非常随机,但在大多数情况下,它会在6小时之后发生。

这是我已经尝试过的:

  • 将网站移至另一台Windows 2012 R2服务器。
  • 删除了" ASP.NET临时文件夹路径" at" C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root"
  • 更新了所有Windows更新&重新启动服务器。
  • 按照此处提及的所有步骤RDLC Native Error 255
  • 卸载的Windows更新3098779和3097997.
  • 授予应用程序池/用户对临时文件夹的完全权限。
  • 我不记得更多事情。

到目前为止,我仍然在第1页遇到此问题。任何想法?

更新: 我现在添加了更多日志,我得到以下内容:

 at Microsoft.Reporting.WebForms.LocalReport.EnsureExecutionSession()

    An unexpected error occurred while compiling expressions. Native compiler return value: ‘255’.

其他一些页面只是抛出External component has thrown an exception.

我有一种强烈的感觉,它与这个问题有关: https://support.microsoft.com/en-us/help/3118750/known-issue-for-security-updates-3098779-and-3097997-for-the-net-frame, 但我按照所有步骤重启几次,Windows更新是最新的。

1 个答案:

答案 0 :(得分:0)

我相信您的应用程序池崩溃了。

在“应用程序”日志中看到此日志时,在事件查看器中检查“系统”日志以获取相同的时间戳。如果您发现以下错误之一,那么您的应用程序肯定会崩溃。

  • 为应用程序池'%1'提供服务的进程遭遇致命错误 Windows进程激活服务的通信错误。该 进程ID为'%2'。数据字段包含错误编号。

  • 为应用程序池'%1'提供服务的进程意外终止。该 进程ID为'%2'。流程退出代码为'%3'。

要详细了解应用程序崩溃的原因,请按此处的博客捕获崩溃转储 - https://blogs.msdn.microsoft.com/parvez/2016/08/06/iis-application-pool-crash-and-debug-diag/