服务器被攻击了,IIS的进程CPU占用100%.是什么攻击?
IIS服务中遇到死循环后,主要的症状为:dllhostexe进程占用CPU使用率100%,从而导致服务器不能正常工作。
经过小编几次教训后,由于技术不高,所以总结出以下笨办法供大家使用:
1 建立一个关闭IIS服务进程的BAT文件,遇到情况后可以及时解决。
文件内容: net stop iisadmin /y
2 建立一个启动服务进程的BAT文件,关闭服务后可以及时启动。
文件内容: Net Start W3svc
3 遇到的问题:因为DLLHOST进程占用CPU过高,可能有时候操作系统不能完全关闭WWW服务,所以如果发现仍有进程CPU占用率为100%的时候,可以再进行一次关闭进程的操作,然后在启动WWW服务。
4 如果对以上不明白的,可以联系我 QQ8218878
5 有一点我没有尝试,如果将这两个程序放到某一个服务中,然后在遇到情况的时候运行一下,是不是就可以远程解决这个问题了,但服务中WWW是不可能了,因为只能进行关闭,或者把关闭放到这里然后将文件设定密码,到时候再用3389开启是个办法。
[问]
我的服务器出现dllhostexe导致内存、CUP占用率100%。
服务器配置 Windows2000 Server IIS50 SQL2000
进程中发现让CPU使用率达到100%的是一个dllhostexe的文件,CPU使用率达到100%,浏览速度变得很慢。
最奇怪的事是在任务管理器进程里发现了两上同名的 dllhostexe 的文件进程。其中一个CPU使用率极低,另一个同名文件进程dllhostexeCPU使用率达到100%,且居高不下,经常在90%--100%之间活动。
天那,真是怪事了。关闭WWW服务重新启后正常,一至两天又出现上述现象。但有时WWW服务无法终止,只有重起计算机后正常。
我试验了一两个月并重装系统数次都没有解决问题。
恳求斑竹赐教。
1怎样在IIS服务中遇到死循环后,自动执行bat文件或定时执行bat文件,以达到IIS服务正常工作?
2怎样从根本上找到死循环的原因?
[答]
如果你的站点只有1个的话,那么你就自己测试一下,带有程序的页面,一个一个点击这样去查看,如果多的话,就关闭一些去查找是哪个站点有问题,不花钱只有这个笨办法了。
不少朋友问到我这个问题,所以在这里再详细的介绍一下
PART 1
原因:由于中了一些病毒,邮件服务器重复进行工作,造成杀毒软件工作繁忙,所以占用内存高
例如:瑞星就有此毛病,资源占用率居高不下
解决方法:关闭杀毒软件的邮件监控或其他监控,如果占用率下降,则是此原因
PART 2
原因:WEB站点内有程序打开数据库或建立对象后没有关闭,日积月累就造成了服务器内存站用量颇高。
例如:机器启动后,内存占用量较低,长时间运行后,内存达到近百甚至几百M。
解决办法:使用上面的命令关闭IIS服务,查看监视器,如果内存骤然降低,那么就是此问题,可以对每个站点逐一进行检查,或者找一些相关的软件进行测试。
PART 3
SERV-U也存在占用资源的问题,有时候开启SERV-U服务时就会占用CPU率100%,但不清楚是怎么回事,不过等等就好了
推荐使用美信云网管。
1 支持监控10台Windows、Linux服务器和网络设备,或者50个PING和URL;
2 监控内容包括:CPU、内存、磁盘、网卡、进程、端口、目录、文件、日志、端口up/down、流量、带宽、丢包率、错包率、网络可用性、URL下载时间、网页防篡改等上百个指标参数;
3 支持邮件、短消息、声音和远程声音告警;
4 支持健康报告、指标报告、对比报告等多种报告;
5 支持状态统计、我的仪表盘、管理对象和监测点等多种视图显示。
云网管迷你版同时提供在线帮助和论坛的官方自助服务
vmstat 1,文本显示,1代表1s刷新一次
想要曲线的话,把vmstat的结果保存到文本里,然后切到excel下绘图
如果不需要那么短的周期,可用cacti,通过snmp调用,5分钟一个周期。
你的图中已经显示了,现在%CPU部分最大的的事几个httpd进程,前面有进程PID
然后通过
lsof -dtxt |grep ##具体PID号就可以知道是哪个进程了。具体原因需要通过日子等分析。
扣肉:即酷睿处理器的昵称,酷睿2(Core 2 Duo)是英特尔推出的新一代基于Core微架构的产品体系统称。是一个跨平台的架构体系,在各个平台有着不同名字,服务器版为Woodcrest,桌面版为Conroe,移动版为Merom。 U:是CPU的江湖简称。CPU( Central Processing Unit)中文名称中央处理器,负责整个电脑系统的协调控制、程序运行等。 羊:指(赛扬),而且已经有业内人士把“扣肉”版赛扬戏称为“羊肉”。 一、基本辨号法是框架 杀毒软件,我们都会进行基本的安装,我们大可称为它是本体或者框架。以后所有的升级包都是围绕这个框架进行填充的。CPU编码也是如此,标准编制的CPU编号都提供了基本参数,例如主频、二级缓存、前端总线、隶属家族,以及一些更为重要的超频信息等。能自己辨认CPU编号,是一个DIYer的基本技能,当我们组装新机时,我们需要通过编号来辨认CPU的综合性能,确认是否被JS调了包,是否具有出色的超频能力。因此,CPU编号对DIY玩家来说至关重要。 这些编码都标示在外壳上,但根据CPU外壳材质的不同,编号有可能是印在标贴上,也可能是刻在外壳上。例如,CPU采用了利于散热的金属外壳封装,编号就会刻在金属外壳上。如果CPU采用了普通封装,编号则会印在CPU表面的标贴上。 印在CPU外壳上的编码 (一)Intel:编码识别法通杀CPU 杀毒软件更新不多,并不代表杀毒能力就不强。我们可以认为它是学习型杀毒软件,在没有另类思维开发的病毒出现之前,没有必要对大家已经用习惯的杀毒软件进行升级、换代。Intel编码标准就是如此,在Intel CPU的外壳上,一般会有五行编码信息,其中包括Intel商标、产品系列型号、核心规格定义、S-Spec编号和产地。当前Intel 最火热的“扣肉”产品系列型号都由一个前缀字母加四位数字组成,标示形式是字母+XXXX,例如Core 2 Duo E6550。这里我们以主流的Intel Pentium E2140和Core 2 Duo E4500处理器为例,具体说说编码信息。 不变应万变的编码识别 目前的Intel CPU编码识别法很早就有了,在没有新架构的CPU出现之前,Intel也没有为识别法“升级换代”的意向。 CPU壳上的Intel Pentium E2140编码字符串 第一、二行字符表示产品家族。其中“E”代表处理器TDP(热设计功耗)的范围,主要针对桌面处理器,除此之外,还有T、L和U等几种类型,“T”开头的多见于移动平台,“L”和“U”分别代表低电压版本和超低电压版本,能耗更低。后面的四位数字由于新旧处理器的相继推出,已经变得较难识别。Intel官方资料也只是对处理器进行了型号罗列没有进行细致解释,我们只能归纳一些目前适用的“非官方”规律:在前缀字母相同的情况下,这几数字越大表示产品系列的规格越高,后面的三位数字则表示具体的产品型号,数字越大就代表规格越高。第二行“PENTIUM”“DUAL-CORE”字样,表示该处理器是Pentium双核处理器。 第三行SLA3J字符是S-Spec编号,这一编号通常都是以SL开头,后面的字母和数字只对应某一特定频率、缓存、外频和步进的处理器。一般用户无法直接看出它的含义,大家可以到Intel官方网站http: //processorfinderintelcom/defaultaspx的sSpec Number栏中输入这几个字母和数字,就可以获得CPU的详细信息。MALAY表示封装地为马来西亚。 第四行字符表示该处理器主频为16GHz、二级缓存1MB、前端总线频率为800MHz,06则代表其核心步进号为L2(关于步进方面的知识,请参考2007年第49期“硬件评测周刊”〈技术空间〉),对于我们普通用户来说,这一行是最为重要的,它告诉我们CPU的几个重要参数。 最后一行数码表示的是该处理器的序列号,它表示的是生产编号等信息。 小贴士:根据TDP电源功耗的不同,Intel桌面版Conroe处理器分为E、T、L、U四个等级,采用E开头的为50W以上产品,主要针对桌面处理器;T打头的为24-49W产品,主要是移动处理器;L代表15-24W的低电压产品;U代表14W以下的超低电压版本。 前面我们教了大家Intel Pentium E2140编码辨认方法。这个方法同样适用于Core 2 Duo E4500。Intel Core 2 Duo E4500编码字符:INTEL 05 E4500、INTEL CORE 2 DUO、SLA95 MALAY、220GHZ/2M/800/06、L732A771。我们这些菜鸟直接抓住重点编码220GBHZ/2M/800/06,所以得知这是一颗主频为22GHz、二级缓存为2MB、前端总线频率为800MHz的Core 2 Duo E4500。 (二)AMD:打上识别升级包 软件打点升级包是为了让软件更加适合用户使用。AMD这次推出的新编号识别方法就是为了让消费者从编号中获得更多信息。为了让大家理解新编号,我们把Athlon X2 BE-2350和Athlon64 X2 4000+作对比进行说明。 标准识别法 参看两者性能参数,我们甚至可以称Athlon X2 BE-2350是Athlon64 X2 4000+TDP为45W的升级版。对比两种标示方法,没有变的是“Athlon”、“X2”字样,分别表示产品为速龙系列、核心数量为2。 识别升级升在哪 标准识别方法介绍很多了,我们重点看看新的补丁做了哪些改进。在Athlon X2 BE-2350身上看不到“64”,因为64位的CPU已经遍地都是,没有必要再炒作这个概念了,而且去掉了它能使型号更简化。此外,“BE-2350”比起“4000+”,它能表示出的信息量大很多。我们从“4000+”身上只能分清CPU型号,而它表示的性能参数等非常有限。“BE-2350”则不一样。 如图,第一个字母代表市场定位,“B”为中端主流,另外“G”和“L”分别表示高端和入门级。 第二个字母表示TDP,“E”表示Energy Efficiency,代表低功耗,“P”代表大于65W,“S”代表约65W,从把功耗写进型号之中这个举措大家能够体会到AMD对于功耗的重视程度。 “2350”可以分成三个部分看,第一个数字代表了各个产品家族,从我们获得的AMD最新标示信息来看,1000系列代表Sempron/Athlon单核心、6000系列代表Athlon双核(目前代表Athlon双核的2000系列很可能会替换成6000系列)、8000系列代表Phenom三核、9000代表Phenom四核。这和我们以前了解的标示方法不太相同。确定了CPU是哪个家族后,第二个数字则告诉了我们芯片的频率等级,余下的留作表示其他附加功能。那么“BE-2350”告诉我们,它是一颗定位中端、TDP低于65W、Athlon双核产品。 最新AMD CPU命名规则,代表Athlon双核的2000系列被换成了6000系列 编码识别同根生 在杀毒软件换代期间,两个版本共存于世是非常正常的事情,虽然杀毒软件版本不同,但是它的杀毒原理却基本相同。识别编码也是如此,虽然AMD有新老两种命名规范,但壳上的编码识别方法却非常类似。 如图所示,两个CPU编码字符共分为四行,第一行表示AMD 商标、处理器类型,大家可以看到它是Athlon系列产品,而且按照CPU新命名规则,我们在Athlon LE-1620的编码上看不到64的字样。 AMD Athlon LE-1620编码字符 AMD Athlon64 X2 4800+编码字符 第二行为核心规格定义,从这行我们可以得到CPU的基本参数,如缓存、电压等。规格我们分为8段进行认识,第一段由两个字母组成,表示CPU属于哪个系列,AD/SD/OS,分别代表Athlon(64)/Sempron/Opteron。第二段是用一个字母表示TDP,A/O/D分别代表标准/65W/35W,Athlon LE-1620 中的“H”没有得到官方证实,但我们可以大胆猜想它代表低功耗。“1620”则是第三段,它是产品型号“Athlon LE-1620”的一部分。第四段是接口,“I”就是主流的Socket AM2接口。第五段“A”和第六段“A”分别表示操作电压和外壳温度。第七段的二级缓存则是用数字表示,3/4/5/6分别代表128KB/256KB/512KB/1MB/2MB,需要提醒的,如果是双核产品,那么就需要除以2,比如图中Athlon64 X2 4800+此处编码为“5”,表示有1MB二级缓存,每个核心缓存容量为512KB。最后两位字母就是核心制成,比如“DH”则代表采用65纳米的Lima核心。 第三行的CCBVF 0741CPMW为核心周期定义,大家注意“0741”,它表明此处理器生产日期为07年第41周。 最后一行表示产品序列号,如果你买的是盒装产品,这需要和盒包的校验编码一致,否则你就要考虑是否买到了假盒装产品
1你可以试着更改并发应用户数,查看sql服务器的cpu使用率。若用户数明显变化而cpu使用率无明显变化,可定位为服务器自身问题,否则继续定位。
2lr增加sql的监控,监控数据库是否有死锁,查看其值及其它指标。
3执行以下语句,查看性能测试过程中执行次数最多的sql语句,然后找开发进行sql语句优化。
select sql_text,executions from (select sql_text,executions from v$sqlarea order by executions desc) where rownum<81;
4重复步骤2和3继续优化定位。
本文将介绍网速慢的原因及提高网速的办法,帮助读者更好地了解如何提高网速。
0条评论