Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 为什么IIS不';t在Windows Server 2012上的w3wp进程中加载ngen程序集_Asp.net_.net_Windows Server 2012 R2_Iis 8.5_Ngen - Fatal编程技术网

Asp.net 为什么IIS不';t在Windows Server 2012上的w3wp进程中加载ngen程序集

Asp.net 为什么IIS不';t在Windows Server 2012上的w3wp进程中加载ngen程序集,asp.net,.net,windows-server-2012-r2,iis-8.5,ngen,Asp.net,.net,Windows Server 2012 R2,Iis 8.5,Ngen,我发现问题是IIS没有在Windows server 2012上加载ngen程序集(.ni-本机映像)。所以它从GAC加载它们,并在每个进程中JIT它们 我知道这可以跨流程共享,因此JIT编译这些程序集不会产生任何成本 听起来很奇怪,但Windows Server 2012上的w3wp进程中没有本机图像(.ni)(请参见屏幕截图),但它在我的计算机上正常加载 总之,本机映像存在并通过路径C:\Windows\assembly\NativeImages_v4.0.30319_64放置在服务器上,但

我发现问题是IIS没有在Windows server 2012上加载ngen程序集(.ni-本机映像)。所以它从GAC加载它们,并在每个进程中JIT它们

我知道这可以跨流程共享,因此JIT编译这些程序集不会产生任何成本

听起来很奇怪,但Windows Server 2012上的w3wp进程中没有本机图像(.ni)(请参见屏幕截图),但它在我的计算机上正常加载

总之,本机映像存在并通过路径C:\Windows\assembly\NativeImages_v4.0.30319_64放置在服务器上,但w3wp不会加载它们

位于Windows Server 2012上的w3wp进程

位于Windows 10 Pro上的w3wp进程

此问题的根本原因是此Windows服务器上的安装

因为它用于从db或web事务获取度量,所以它停止了共享程序集的机制


如果从服务器上删除NewRelic,您将看到应用程序的正常内存使用情况(按类型分配内存)。

此问题的根本原因是此Windows服务器上的安装

因为它用于从db或web事务获取度量,所以它停止了共享程序集的机制


如果从服务器上删除NewRelic,您将看到应用程序的正常内存使用情况(内存按类型分布)。

您在应用程序池上设置了什么版本的.NET?NET clr版本在所有池中定义为v4.0,但web.api应用程序已编译为NET 4.5,web.config包含targetFramework=“4.5”相对而言,您在应用程序池上设置了什么版本的.NET?NET clr版本在所有池中定义为v4.0,但web.api应用程序已编译为NET 4.5,web.config包含targetFramework=“4.5”