|
租用的服务器在使用操作系统的时候,用着用着系统就变慢了,打开“ 任务管理器 ”一看,才发现CPU使用率达到80%以上。这是怎么回事情呢?
遇到病毒了吗?硬件有问题?还是系统设置有问题呢?从硬件,系统进程来介绍CPU资源使用率为什么会达到那么高,以帮助大家排除服务器CPU使用率高的种种疑惑。
一、硬件因素
以下分别从CPU温度,CPU超线程,硬件配置,硬件驱动和待机方面分析。
1、CPU温度过高
如果CPU风扇散热不好,会导致CPU温度太高,使CPU自动降频,从而使CPU的性能降低。总之高温时CPU会自动将降低工作效率。
2、超线程
超线程导致CPU使用率占用高,这类故障的共同原因就是都使用了具有超线程功能的P4 CPU。据一些网友总结超线程似乎和天网防火墙有冲突,可以通过卸载天网并安装其它防火墙解决,也可以通过在BIOS中关闭超线程功能解决情况3、硬件配置不合理例如内存不足,当运行一些大型软件时,CPU的资源大部分耗在了虚拟内存的交换处理上。而电源功率不足,也会使CPU的性能难以发挥。还有,在购买CPU时,选的CPU核心频率不足是导致CPU的使用率高的最直接原因。
3、不完善的驱动程序
硬件的驱动程序没有经过认证或者是不合法的认证,会造成CPU资源占用率高。因大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因。处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号、版本。
4、待机
经常使用待机功能,也会造成系统自动关闭硬盘DMA模式。这不仅会使系统性能大幅度下降,系统启动速度变慢,也会使是系统在运行一些大型软件时CPU使用率高。
二、系统进程因素
相对于硬件因素的影响,系统进程的异常也多为CPU资源使用率高的征兆。以下分别以Dllhost进程和Services进程的分析来剖析异常的原因以及解决办法。
1、Dllhost进程
特征:服务器正常CPU消耗应该在75%以下,而且CPU消耗应该是上下起伏的,出现这种问题的服务器,CPU会突然一直处100%的水平,而且不会下降。查看任务管理器,可以发现是DLLHOST.EXE消耗了所有的CPU空闲时间,管理员在这种情况下,只好重新启动IIS服务,奇怪的是,重新启动IIS服务后一切正常,但可能过了一段时间后,问题又再次出现了。
直接原因:有一个或多个ACCESS数据库在多次读写过程中损坏,微软的MDAC系统在写入这个损坏的ACCESS文件时,ASP线程处于BLOCK状态,结果其它线程只能等待,IIS被死锁了,全部的CPU时间都消耗在DLLHOST中。
解决办法:安装“一流信息监控拦截系统”,使用其中的“首席文件检查官IIS健康检查官”软件,启用”查找死锁模块”,设置:–wblock=yes监控的目录,请指定您的主机的文件所在目录:–wblockdir=d:\test,监控生成的日志的文件保存位置在安装目录的log目录中,文件名为:logblock.htm停止IIS,再启动“首席文件检查官IIS健康检查官”,再启动IIS,“首席文件检查官IIS健康检查官”会在logblock.htm中记录下最后写入的ACCESS文件的。
过了一段时间后,当问题出来时,例如CPU会再次一直处100%的水平,可以停止IIS,检查logblock.htm所记录的最后的十个文件,注意,最有问题的往往是计数器类的ACCESS文件,例如:”COUNT.MDB”,”COUNT.ASP”,可以先把最后十个文件或有所怀疑的文件删除到回收站中,再启动IIS,看看问题是否再次出现。我们相信,经过仔细的查找后,您肯定可以找到这个让您操心了一段时间的文件的。
找到这个文件后,可以删除它,或下载下来,用ACCESS2000修复它,问题就解决了。
2、Services进程
症状:在基于 Windows 2000 的计算机上,Services.exe 中的 CPU 使用率可能间歇性地达到100 %,并且计算机可能停止响应(挂起)。出现此问题时,连接到该计算机(如果它是文件服务器或域控制器)的用户会被断开连接。您可能还需要重新启动计算机。如果 Esent.dll 错误地处理将文件刷新到磁盘的方式,则会出现此症状。
解决方案
Service Pack 信息:要解决此问题,请获取最新的 Microsoft Windows 2000 Service Pack。有关其它信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:260910 如何获取最新的 Windows 2000 Service Pack修复程序信息:Microsoft 提供了受支持的修补程序,但该程序只是为了解决本文所介绍的问题。只有计算机遇到本文提到的特定问题时才可应用此修补程序。此修补程序可能还会接受其它一些测试。因此,如果这个问题没有对您造成严重的影响,Microsoft 建议您等待包含此修补程序的下一个 Windows 2000 Service Pack。
要立即解决此问题,请与“Microsoft 产品支持服务”联系,以获取此修补程序。
@yaya190315
|
|