我们最近将我们的网站从IIS 7.5移到IIS 8.5。
在我们的旧服务器上,我们从未遇到内存问题
新的服务器在6G内存启动,并且出现了内存exception。 我们一直把它搞砸,直到服务器变得更加稳定。
在我们的旧服务器上,我们通常会看到70-75%的内存使用率。
在新的服务器上,我们通常会看到98-99%的内存使用率,这与服务器上的内存无关。
一般来说,应用程序池使用的是以前服务器上的内存量的2-3倍。
例如,我们有一个应用程序池,在旧的服务器上一直运行在350-400兆内存。 在新的服务器上,同样的池运行在800兆-1.2兆。
我们search谷歌,serverfault和stackoverflow,看看是否有其他人遇到过类似的情况,无济于事,不胜感激。
在从Server 2008 R2和IIS 7.5到Server 2012 R2和IIS 8.5的过渡期间,我们遇到了相同的症状。 在我们的情况下,这是在.NET Frameworkconfiguration中新configuration的错过设置。 需要将性能scheme设置为HighDensityWebHosting( http://www.asp.net/aspnet/overview/aspnet-and-visual-studio-2012/whats-new#_Toc_perf_5 )
我们已经设置了这个,但不小心在32位框架(Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet.config)而不是64位设置(Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet的.config)。 啊。
得到正确的设置后,我们实际上看到我们应用程序的应用程序池在IIS 8.5和7.5上使用的内存减less了大约1/3