如何配置Apache2 / mod_python / Django以在N秒后中止请求处理?

时间:2010-01-07 14:48:22

标签: django timeout apache2 mod-python infinite-loop

我最近花了很长时间调试一些在我自己的代码中被证明是无限循环错误的东西。由于我不能保证我永远不会再犯这样的错误,我如何配置我的Web服务器以终止任何仍在等待我的python应用程序返回响应超过N秒的apache2子进程?

在这种情况下,我甚至没有注意到该错误,直到该网站开始感觉缓慢,此时一个apache2进程在无限循环内运行了几个小时。如果有一个超时(即使很长的一个,比如10分钟)可能已经抓住了这个并通过电子邮件发送给我,我就会更快地知道这个问题,并且不会影响到很多用户的网站性能。

谷歌搜索,我在mod_wsgi配置中找到了类似的一些建议,但如果有一种方法可以在我目前的设置下执行此操作,我宁愿这样做。谢谢!

2 个答案:

答案 0 :(得分:0)

嗯。

我想知道你是否可以使用mod_cgi运行Python脚本进行开发。然后返回mod_python进行部署。

然后,您可以使用Apache核心TimeOut指令来限制Apache等待mod_cgi响应的时间。注: Apache 2.2也就是说,TimeOut指令的这个扩展只带有2.2版本。

HTH

答案 1 :(得分:0)

简短的回答是否定的,mod_python中没有内置功能可以对单个请求进行超时。