|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
学习python,无论你是打算拿他当主要开发语言,还是当辅助开发语言,你都应该学习他,因为有些时间我们耗不起。
上彀查了一下,引发的缘故原由次要是因为网站程序中毗连数据库的代码没有实时封闭酿成的,如许链接多了今后就会形成链接数据库的链接抵达峰值,不克不及再毗连数据库,因而iis就报servertoobusy。
可是检察代码当然主要,关头是要实时办理不克不及会见的成绩,因而接纳了以下办理办法:
1.起首包管网站能够在第一工夫恢复一般:a:将sql数据库服务器封闭,在启动。b:将iis重启.如许操纵以后最少能够包管网站能够即刻扫瞄。
2.将iis使用程序池的接纳内存减小。见到200mb摆布。会见量在30万天天的情形下。应当是5分钟就可以接纳一次。制止链接数据库的链接到年夜峰值。
3.查找没有断开毗连的代码,将毗连实时封闭。
ASP.NET功能调剂之办理ServerTooBusy毛病
比来公司的一个ASP.NET站点频仍呈现ServerTooBusy毛病,详细体现为页面呼应慢、常常呈现ServerTooBusy非常;但实践上服务器的资本损耗却很低,CPU利用只要10%摆布,十分奇异。
该站点运转情况为Windows2000,IIS5.0,.NETFramework1.1,站点压力约为每秒10个毗连,峰值时约为30。
从网上查找相干材料后,从体现出的情形来看(呼应慢,抛出ServerTooBusy非常),开端判别为同时毗连过量引发的线程堵塞引发。修正web.config中的httpRuntime设置节中的appRequestQueueLimit参数后,ServerTooBusy的毛病失掉办理。此参数默许从machine.config中承继,默许值为100,改成1000后ServerTooBusy的毛病不再呈现。
固然服务器忙的毛病办理了,可是站点呼应仍是很慢,偶然候要等上5―10秒才干翻开页面。剖析缘故原由应当是同时哀求过量,而IIS事情线程不敷的缘故原由引发,修正machine.config中processModel设置节maxWorkerThreads参数为200后站点呼应速率慢的成绩失掉办理。此参数默许值为20,可依据服务器硬件设置于压力巨细得当调剂。
剖析缘故原由,是由于站点程序中利用了HttpWebRequest哀求内部服务器的页面,而这个操纵是相称耗时的(内部服务器呼应慢是次要缘故原由)。当会见者的哀求抵达ASP.NET事情历程后,ASP.NET起首会反省是不是有空余的事情线程(WorkerThread),假如有的话,就交给一个余暇的事情线程去向理,假如没有余暇的事情线程,那末这个哀求就会被放到哀求行列(RequestQueue)中,这个时分的体现就是呼应很慢。当会见量过年夜招致哀求行列也满了的时分,ASP.NET就会抛出ServerTooBusy非常了。在.NET1.1中,默许的事情线程和哀求行列分离为20和100,当运转的代码对照费时而会见量又较年夜的时分,这两个默许值明显就太小了。(如今的服务器硬件廉价了,一样平常PC服务器的吞吐量都应当远凌驾这个数)。这两个值能够依据服务器压力巨细来举行公道设置。以调剂站点吞吐量。
httpRuntimeServerTooBusy
修正办法:修正服务器.net设置“machine.config"文件,该文件位于Windows体系目次下,如“C:WINDOWSMicrosoft.NETFrameworkv1.1.4322CONFIG ”,视你的网盘程序版本,修正对应目次下的machine.config文件,如2.0版本用户就修正“C:WINDOWSMicrosoft.NETFrameworkv2.0.50727CONFIG”下的machine.config文件,查找该文件中的“processModel”设置段落,修正个中的字段maxWorkerThreads="200"maxIoThreads="200",1.1和2.0的默许段落不太一样,修正后的设置以下:
1.1版本:
.代码以下:
<processModel
enable="true"
timeout="Infinite"
idleTimeout="Infinite"
shutdownTimeout="0:00:05"
requestLimit="Infinite"
requestQueueLimit="5000"
restartQueueLimit="10"
memoryLimit="60"
webGarden="false"
cpuMask="0xffffffff"
userName="machine"
password="AutoGenerate"
logLevel="Errors"
clientConnectedCheck="0:00:05"
comAuthenticationLevel="Connect"
comImpersonationLevel="Impersonate"
responseDeadlockInterval="00:03:00"
maxWorkerThreads="200"
maxIoThreads="200"
/>
2.0版本:
本来默许的是<processModelautoConfig="true"/>
改成<processModelmaxWorkerThreads="200"maxIoThreads="200"/>
不必从头启动服务器就能够看到效果。
以上只是团体理论体味,我的服务器形态是:2003操纵体系,
系统做了些什么,这需要时间去掌握,(背命令不是一件好的学习方法,相信我你一定会在你背完之前全部忘光),尽量掌握常用命令; |
|