首页 / 知识
如何限制IIS中Perl脚本的执行时间?
2023-04-16 02:29:00

How can I limit execution time for a Perl script in IIS?这是一个共享的托管环境。我控制服务器,但不一定控制内容。我有一个带有Perl脚本的客户端,该客户端似乎有时会失控,然后消耗50%的处理器,直到进程被杀死。 使用ASP脚本,我可以限制脚本的运行时间,IIS会在90秒后将其关闭。这不适用于Perl脚本,因为它作为cgi进程运行(并实际上启动了一个外部进程来执行脚本)。 类似地,在工作进程中寻找过多资源消耗的技术可能不会看到这种情况,因为正在消耗的资源(处理器)是由子进程而不是WP本身咀嚼的。 是否有办法使IIS中止运行时间太长的Perl脚本(或其他cgi类型的进程)?怎么样?? 此更新... 事实证明,该特定脚本显然有点bug,而且Googlebot具有"按下按钮"并使其疯狂的超凡能力。该脚本是执行日历的较旧的商业应用程序。显然,它显示"下个月"和"上个月"的链接,并且如果您多次跟踪"下个月",您将跌跌撞撞。但是,结果页面仍包含一个"下个月"链接。 Googlebot会不断将脚本打死,并吞噬处理器。 奇怪的是,添加带有Disallow的robots.txt:/不能解决问题。 Googlebot要么已经掌握了该脚本,就不会放任自流,或者根本就是无视robots.txt。 无论如何,Microsoft的Process Explorer(http://technet.microsoft.com/zh-cn/sysinternals/bb896653.aspx)提供了巨大的帮助,因为它使我能够看到perl.exe的环境。进行了更详细的处理,因此我能够确定是引起问题的Googlebot。 我一知道(并确定robots.txt无法解决问题),便能够直接使用IIS阻止* .googlebot.com对该网站的所有访问,在这种情况下效果很好,因为我们不在乎Google是否会对此内容编制索引。 非常感谢大家发表的其他想法! 埃里克·朗曼 ASP脚本超时适用于所有脚本语言。如果脚本在ASP页中运行,则脚本超时将关闭有问题的页面。 在UNIX风格的系统上,我将使用捕获ALRM事件的信号处理程序,然后使用警报功能启动计时器,然后再启动预期会超时的操作。如果操作完成,我将使用alarm(0)关闭警报并正常退出,否则信号处理程序应将其拾起以正常关闭所有内容。 我已经有一段时间没有在Windows上使用过perl了,尽管Windows有点POSIXy,但我不能保证这会起作用。您必须查看perl文档,以查看平台上是否支持信号或在何种程度上支持信号。 有关信号处理和使用alarm()进行的此类自毁编程的更多详细信息,可以在Perl Cookbook中找到。这是一个简短的示例,该示例摘自另一篇文章,并做了一些修改:
搜索" iis cpu限制"会产生以下结果: http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/38fb0130-b14b-48d5-a0a2-05ca131cf4f2.mspx?mfr=true " CPU监视功能监视并自动关闭消耗大量CPU时间的工作进程。已为单个应用程序池启用了CPU监视。"" http://technet.microsoft.com/zh-cn/library/cc728189.aspx "通过使用CPU监视,您可以监视工作进程的CPU使用率,并有选择地关闭消耗大量CPU时间的工作进程。CPU监视仅在工作进程隔离模式下可用。"" |
最新内容
相关内容
linux打开控制台命令?
linux打开控制台命令?,工作,系统,信息,地址,命令,目录,基础,工具,管理,第一,linux50个常用命令1、linux常用命令: pwd命令 该命令的英文解释linux控制台保存命令?
linux控制台保存命令?,状态,系统,命令,电脑,文件,编辑,终端,模式,历史,存在,linux保存退出命令linux怎么保存并退出首先需要打开linux服务器,然linux控制台创建命令?
linux控制台创建命令?,工作,地址,系统,命令,信息,目录,管理,名字,文件,控制台,linux基本操作命令1、linux常用命令有pwd命令、cd命令、ls命令linux脚本多个命令?
linux脚本多个命令?,系统,工作,标准,服务,命令,软件,管理,连续,电脑,设备,linux脚本如何一键授权并执行1、chmod u+x file,如果只给文件所有者linux控制台多命令行?
linux控制台多命令行?,工具,服务,情况,地址,连续,命令,窗口,终端,脚本,控制台,Linux多台主机批量执行命令执行命令(记得先对doCommand.s h增加linux脚本注释命令?
linux脚本注释命令?,代码,系统,工作,名称,地方,脚本,命令,信息,状态,简介,linux脚本里的#! 是什么意思1、方法一:切换到shell脚本所在的目录(此脚本运行linux命令?
脚本运行linux命令?,系统,环境,工具,工作,位置,底部,代码,发行,官网,终端,linux下shell脚本命令PS1 主提示符,在特权用户下,默认的主提示符是#,在linux命令测试客户端?
linux命令测试客户端?,地址,系统,网络,工具,工作,分析,环境,命令,下行,资料,linux测试网速的工具1、speedtest-cli是一个用Python编写的轻量级linux命令下写脚本?
linux命令下写脚本?,服务,系统,环境,代码,名称,命令,脚本,发行,在线,情况,三个简单Linux的shell脚本程序编写Shell编程实战 实现文件备份 文件linux命令行远程控制?
linux命令行远程控制?,系统,地址,服务,网络,电脑,软件,工具,实时,网站,命令,Windows系统远程控制Linux系统的详细图文方法介绍Windows远程控制linux命令的执行时间?
linux命令的执行时间?,时间,系统,周期,信息,命令,设备,环境,地址,基础,进程,linux如何查看一个命令执行的时间linux查看历史命令,为您提供linuxlinux把命令变成脚本?
linux把命令变成脚本?,系统,环境,工作,脚本,命令,信息,基础,代码,文件,变量,如何编写简单的Shell脚本文件之Linux的基本操作1、在开始Shell编