日期:2014-05-16  浏览次数:21295 次

dllhost占用CPU过大,IIS无法访问


我从服务器打包下载下来程序,放在本地测试,dllhost占内存过大,网站无法访问,在服务器2003系统上面却正常.
本地是:XP+IIS

ASP+SQLSERVER  


dllhost占用CPU过大

------解决方案--------------------
这种现象最有可能的两种情况是 
1 数据库连接和记录集没有及时关闭并设为Nothing
2 Application和Session中存放了线程模型不符合要求的对象,比如 ado fso等组件或第三方组件,VBS数组,类等

------解决方案--------------------
由于ADO的设计机制,如果你不断地去查询一些大结果集,哪怕你释放了或者设为Nothing,依然还会遇到内存不足的问题。

所以,还需要检查一下代码是否有对大结果集做分页,也就是说一页一页地从数据库查询。

如果检查代码找不到原因,那么需要抓取hang dump来分析。

http://support.microsoft.com/kb/286350