我在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编译器)这是我已经尝试过的:
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root
" 到目前为止,我仍然在第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更新是最新的。
答案 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/