科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件如何解决win2003 sp2,iis6频繁假死的问题?

如何解决win2003 sp2,iis6频繁假死的问题?

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

如何解决win2003 sp2,iis6频繁假死的问题?

作者:csdn 来源:csdn 2009年12月16日

关键字: 问答 IIS

  • 评论
  • 分享微博
  • 分享邮件

 如何解决win2003 sp2,iis6频繁假死的问题?

大概每3天就会假死1次
假死的时候在客户机和服务器上,都无法访问页面,html和asp.net都无法访问
假死时iis服务是运行的
重起iis服务也无法解决
只能重起服务器,起了之后就OK,但是3天左右又死了

如何解决假死呢?
如果是补丁,请详细给出补丁的链接
如果是应用池,请详细给出配置信息

听起来很像是NonPagedPool用完了,http.sys就无法接受http请求了,可以检查一下IIS error log: %WIN_ROOT%\system32\LogFiles\HTTPERR\httperr#.log里面有没有下面的错误:
datetime - - - - - - - - - 1_Connections_Refused -
如果有的话,参考以下文章,很有可能你用了3GB,把它改回去就可以了
http://support.microsoft.com/kb/933844

 

[boot loader]
timeout=2
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003, Enterprise" /noexecute=optout /fastdetect
C:\mxldr=MaxDOS V6

 

打开任务管理器,在Performance选项卡上注意观察Kernel Memory/Nonpaged的大小,是不是在持续增长。假设你的物理内存有4G,那么在Windows 2003下面,默认的NonPagedPool的总大小约为256MB,当它被使用到只剩下不到20MB的时候,就会出现你这个问题。如果物理内存小于4G,那么这个数值又不一样。

如果你从任务管理器里面观察到NonpagedPool使用比较大的时候,我们就可以确定你遇到的就是这个问题。在之前我提供给你的文章里面有第二种方法:http://support.microsoft.com/kb/177415/
关键是我们需要找到谁在大量使用NonpagedPool。
如果你自己还是搞不定这个问题的话,可以找Microsoft的技术支持。

 

看起来你的问题就是Kernel Mode Memory leak
一般说来NonPaged用到几十个MB就差不多了,而你用到了130MB
但是有点奇怪的是你并没有开启/3GB,那么就算用到了130MB,也还有足够的剩余量。如果开启了/3GB的话,在4G内存的Windows 2003上面,Kernel mode 的NonPaged总大小约为150MB,150-130 = 20MB。
前面我说过,剩余大小 <20MB的时候就会发生问题。

现在你只能用http://support.microsoft.com/kb/177415/的方法来看谁用掉了Kernel mode的NonPagedPool了。一般来讲,某些驱动程序会导致leak,如果不同的帐户开启了无数个桌面应用的话,也会导致Kernel Mode Memory leak

 

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章