发现不少客户都会遇到香港服务器租用(http://www.VeVb.com/hkzy)或香港服务器托管IIS出现假死的情况。为了能更好的为客户服务,我查找了一些解决IIS假死的办法仅供大家参考
在IIS下的WEB程序在调试时,时常会因为一个死循环或者数据库的查询语句错误,而导致IIS卡死,第一反应就是去重新启动IIS,但是结果却经常会在停止服务再启动服务时说无法启用.在这里说个小窍门,让您不必重启机器,你只需要打开任务管理器,结束inetinfo.exe进程,系统会自动重新开启这个进程,这时等于就是重新启动了一次IIS服务器经常产生“应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制。进程 ID 是 '3504'。”的错误,导致iis处于假死状态,经了解是IIS应用程序池的设置问题。解决方法如下:
Internet 信息服务(IIS)管理器->应用程序池->DefaultAppPool->右击属性
第1种方法:
原因:独立进程的 内存堆戋消耗完了,IIS不能创建更多的进程工作空间来处理
解决方法:
1. HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/W3SVC
2. 在Parameters键下新建一个DWORD项,名字为:UseSharedWPDesktop 值为1 重启IIS
第2种
问题已解决,发现是数据库连接无法释放,不知道是什么原因,同样的代码在本地就是好的,在服务器端就有问题,最后在连接串里加入以下语句解决问题.
Pooling=true; MAX Pool Size=512;Min Pool Size=50;Connection Lifetime=30
第3种
新建应用程序池,不同的网站引用不同程序池。
第4种
设置回收时间:很多人以为设置回收池越短越好,其实是错误的,每次回收当然是把内存回收回来了,但加重了一次服务器的负担,当服务器比较繁忙的时候,有可能导致其他应用池死。所以建议设置共1000就行了。其他独立池按照他网站流量而设置 可以设置600 也行,共用的不建议设置太短。
第5种
网站后台过不了多久自动退出又要重新登陆:这个情况就是你设置回收时间太短了,按照 6点设置吧。 不要设置什么20分、30分这样的,这样不好的。另外一个原因就是和站的响应设置时间有关,设置得稍长些。
总之,对于部分人来说,这种方法可能不太方便,所以可以用一个工具来回收应用程序池,这样方便而且快捷。个人用户当然不需要这种工具;公司用户的话,服务器压力挺大,所以都用工具来解决一些问题。所括.iis的备分,及虚拟主机ip的统一修改及端口访问的ip记录。用批处理是一个很简单又方便的方法,所以.把一台香港服务器租用或香港服务器托管(http://www.VeVb.com/bgptg)做的安全,并不是哪么容易的事。特别是iis,经常去官方网站搜索资料是一个好习惯,还有就是经常性的访问日志,及注册表的用户还有加载运行的程序及服务也是一个好方法。