1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。
2、设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭。
根据w3wp取得是哪一个应用程序池:
1、在任务管理器中增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid
2、在命令提示符下运行iisapp -a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池。(iisapp实际上是存放在C:\windows\system32目录下的一个VBS脚本,全名为iisappvbs,如果你和我一样,也禁止了Vbs默认关联程序,那么就需要手动到该目录,先择打开方式,然后选“Microsoft (r) Windows Based Script Host”来执行,就可以得到PID与应用程序池的对应关系。)
3、到iis中察看该应用程序池对应的网站,就ok了,做出上面的内存或CPU方面的限制,或检查程序有无死循环之类的问题。
解决内存占用过多,可以做以下配置:
1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。
2、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。再设置当内存占用超过多少(如500M),就自动回收内存。
我的设置如下:
首先是对CPU的限制:在启用cpu监视后,我设置该应用程序池最大的cpu使用率为50%。设置刷新cpu时间为1分钟,设置 *** 作为“关闭”。最大工作进程数设置为1。这个意思是,IIS刷新检测该独立池的CPU使用情况时间为1分钟,如果超过设置的cpu限制50%,就会发出关闭池的指令,要求池在指定的时间内关闭。如果池成功在这个时间内关闭,IIS会重启动一个新池,此段时间很短,一般不会有什么感觉,池就重新开启了,对于访问网站的人基本是不会有感觉的。但如果池没有在指定时间内关闭,IIS就会强行关闭它一个刷新CPU时间。在这个停止的时间内,网站无法访问,提示“Service Unavaliable”。
关闭时间和启动时间间隔设置:设短一些比如10秒,这样当您的网站程序大量占用系统资源时IIS自动快速回收进程并且快速启动进程,您的网站暂时还可以将就着工作。
对内存的限制及进程回收时间的设置:我设置为内存占用超过800M就自动回收内存,虚拟内存没有做限制。进程回收时间我保持默认没有修改。各位可以根据自己的情况设置更短的时间。对应用程序池最大虚拟内存也可以在此进行设置,超过了设置的最大虚拟内存,该池会就被回收。
最后综合落伍wlmmc的一些经验,总结一些需要注意的问题:
1、 要限制一个站点的CPU使用,必须将该站点设置为独立应用程序池,共用应用程序池是无法限制单个站点的。IIS独立应用程序池,就需要独立的进程,非常消耗内存。独立池越多,就有越多的W3WP进程。对于每个站点均要独立应用程序池的服务器,在一般的普通P430 2G内存 的普通服务器上,建议不要超过50个站点,最好30以内,不然服务器压力非常大。在配置上,我一般把资源消耗较大的网站独立一个池,一般普通BBS或者生成HTML的系统大概5个站一个池。普通网站以及一些企业站点均共用一个池。
2、根据wlmmc的经验,在服务器硬件允许的情况下,一般不要限制站点内存使用,这样能够保证网站运行,不会出现用户掉线情况。需要限制某站的最大虚拟内存不要小于64M,不然可能出现一些未知的错误。
3、这些都不是根本解决办法,它的根本问题是网站程序有问题,要解决根本问题还要从程序查起。根据本文开头提到的方法查到具体的应用程序池,找到使用此应用程序池的网站,解决网站程序存在的问题,如死循环之类。
4、除了w3wpexe, 在调用数据库进行大量查询 *** 作的时候,也会大量占用CPU资源,这是难免的(数据库方面的语句及结构优化不在本文讨论范围之内)。个人认为,只要不是CPU长时间占用100%, 一般在75%左右都是正常的。
出现这种情况是由于您的网站超过了系统资源限制造成的,主要是流量太大或者程序占用资源太多。
1流量太大
比如您购买的是b002型基础型主机,该主机的额定流量是15G/月。如果您的网站每月流量在15G,每天流量在05G以下,则应该能正常访问。如果连续几天的访问量上升,流量超过05G/天,则该主机属于超负荷运行。超负荷运行情况下,则会出现有时能正常访问,有时被系统自动停止(Service Unavailable)的情况。
解决办法是:首先登录虚拟主机管理中心查看最近的访问统计和流量统计,看看流量有没有异常增加的情况,有时站内的个别RAR或者mp3文件被其他网站盗链,则会出现流量上升几十倍的情况。通过我们提供的日志下载功能和访问统计中的"文件类别"功能进行分析,可以得出是否有盗链或者被大量下载。如果是流量自然增长,购买的型号不能满足要求,则需要对虚拟主机型号进行升级,以获得更多的流量配额。
2程序占用资源过多
比如同样是100人在线的论坛,雷傲论坛所占的资源就是动网论坛所占资源的10倍以上;另外,一些死循环程序,或者不优化的程序(比如10版的阿江统计在数据库太大的情况下)都会占用太多的系统资源,而系统资源明显是有限的。由于我们的新虚拟主机是采用WINDOWS2003的 *** 作系统,各网站之间是以独立进程运行的,不会相互影响。
如果一个网站的程序占资源太多或者发生太多的错误,系统日志就会提示:“应用程序池 'west263pool11' 被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误, 或者提示:应用程序池 'hui999' 超过了其作业限制设置。
这时,访问这个网站就会提示:Service Unavailable。一般系统会在30秒左右恢复正常,多刷新几次就能正常访问了。
如果经常出现类似的错误,请及时优化网站程序,或者升级你的虚拟主机至更高的款型,以获得更多的系统资源。
程序占用资源太多的原因如下:
1有一个或多个ACCESS数据库在多次读写过程中损坏,微软的MDAC系统在写入这个损坏的ACCESS文件时,ASP线程处于BLOCK状态,结果其他线程只能等待,IIS被死锁了,全部的CPU时间都消耗在DLLHOST(ASP进程)中。
参考解决办法:
压缩和修复我的数据库,下载数据库文件--[如果是asp的扩展名,请改为mdb的扩展名]--用ACCESS打开--选择工具--数据库实用工具--压缩和修复数据库--[改回asp的扩展名]--上传覆盖原来数据库文件
2注册了不良的Com组件,特别是用VB开发的ACTIVE X控件,可能导致占用内存使用量不断增长
参考解决办法:尽量减少或避免非官方或是客户要求的不必要的组件
3多媒体等文件下载占用服务器带宽
参考解决办法:停止下载
4程序问题
需要及时的关闭不再使用的数据库,以避免一直占用服务器资源 在connasp 连接数据库字符串语句中加入如下 sub endConnection() connclose set conn=nothing end sub 其它程序问题:把IE选项里 显示友好>
首先要写报告证明自己不是故意的申请恢复
1首先插上电源,看看电脑的供电是否正常,即听风扇响声和看看开机按钮是否正常亮,如果正常亮风扇正常运转说明电脑的供电正常,如果开机按钮不亮,则要考虑是不是换个电源试试了。
2电源如果没问题,然后看看是不是显示器有问题了,换个正常的显示器试试。
3如果显示器正常,则再考虑是不是电脑的静电引起的开不了机,首先把电源拔掉,然后手按住电源开机键能有10多秒,多按两遍,试试看看好不好使,如果不好使,则看下面的方法
4拆开机箱把内存条拿下来,拿东西擦擦金手指上的灰,再重新放进去。这回按开机,看看你的电脑能否正常启动,下图所示为电脑里的内存条的常见样子。
503是一种>
1、验证是否已为虚拟服务器配置了应用程序池。默认的应用程序池是MSSharePointPortalAppPool。
2、请按照下列步骤来确定虚拟服务器正在使用的应用程序池。
a单击“开始”,指向“管理工具”,然后单击“Internet信息服务(IIS)管理器”。
b展开“ServerName”,展开“Web站点”,右键单击虚拟服务器,然后单击“属性”。
c单击“主目录”选项卡。为虚拟服务器配置的应用程序池列在“应用程序池”框中。单击“确定”。
3、验证应用程序池帐户使用的密码是否正确。IIS不会自动轮询ActiveDirectory目录服务中的密码更改。如果应用程序池帐户是一个域帐户,其密码已过期,则在为此帐户重新指定一个新密码后,可能会收到本文“症状”部分所描述的错误信息。
4、验证应用程序池帐户是服务器上的IIS_WPG组和STS_WPG组的成员。
5、重新启动IIS以回收应用程序池。
有可能是由于timer已经被回收掉了 你是在什么环境下面winform webform
经过你的补充我看明白了 是这样的 由于你的应用程序在特定空闲时间之后相应的w3wp辅助进程会被回收掉 所以你的timer自然没有作用了 你可以查看iis 应用程序池的属性 切换到性能选项卡空闲超时 默认的时间是20分钟 也就是说如果20分钟内你的网站没有任何请求那么就会造成回收
罪魁祸首就是近期更新的关于IIS的补丁把你系统里面的两个服务给禁止了,启动Windows Process Activation Service
试试记得启动相关联的服务,如果不行你也只有还原了。
再就是:
搜索applicationHostconfig
用applicationHostconfig替换C:\Windows\system32\inetsrv\config\applicationHostconfig
不是。
网页503是由于网站超过了系统资源限制造成的,主要是程序占用资源太多,稍后刷新即可。
解决方法一:
1进WIN2008服务器,打开IIS,找到常出503错误的应用程序池,选中该程序池,下图阴影部分的程序池便是选中的应用程序池。
2选中应用程序池后,选择右边的高级设置,打开应用程序池高级设置。
3在应用程序池高级设置中,找到回收选项,禁用重叠回收一项选择ture,这样可以创建一个工作进程之前退出现有工作进程。
4设置好回收后,接下来设置快速故障。找到”服务不可用“响应类型,默认为>
以上就是关于设置了应用程序池的内存限制,为什么内存使用能超过全部的内容,包括:设置了应用程序池的内存限制,为什么内存使用能超过、出现Service unavailable怎么解决、个人征信有问题,银行不给贷款,怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)