我使用Fluent NHibernate获得了WCF服务。当我在我的开发机器(WIN7)上的IIS7.5中托管它时它工作正常。工作进程显示我的应用程序池的清除垃圾收集指示。
但是当我转向使用带有IIS7的Windows Server 2008生产时,垃圾收集无效,并且工作进程中的虚拟字节不断增加并且内存不足。
应用程序池配置为Integrated .net 2.0。有没有人经历过这个,或者它是IIS7.0的已知问题,还是我错过了配置文件中的任何设置?
我已经尝试过及时回收,但没有任何效果。
此致 普拉迪普
答案 0 :(得分:0)
对于在Windows 2008 IIS7上运行的垃圾收集的一些引用比在开发机器上运行的更少,请参阅例如:GC Not Running Often Enough on IIS 7 Application - Windows Server 2008
但是,如果您遇到此问题,则会以这样的方式编写代码,以便将对象留给垃圾收集进行清理。您应该尝试处理对象并禁止完成,请参阅http://msdn.microsoft.com/en-us/library/ms973837.aspx,尤其是本文末尾的代码示例。