长时间运行的 PHP 脚本被终止

长时间运行的 PHP 脚本被终止

我在运行 Ubuntu 10.04 的 VPS 上按计划运行许多脚本。每当服务器负载过重时(我运行 munin 作为监控工具),我从日志中注意到许多正在运行的脚本被终止,而我唯一看到的就是日志文件末尾的“终止”。这不是 PHP 的最大执行时间,因为该时间设置得足够长。

这是我的 VPS 提供商为了对抗负载而采取的措施,还是 Ubuntu 为了保持系统响应而采取的措施?根据 munin 的说法,我的 VPS 配置非常奇怪。我看到我有超过 30 GB 的内存,尽管我只支付了 512MB。我还注意到我的内存经常超过 512MB,尤其是在负载过重的时候。这就是为什么我想知道这是我的 VPS 提供商所为。实际上,如果他们直接告诉我我的内存使用量太高,我会很乐意升级到 1GB 套餐,但在我看来,在没有任何通知的情况下终止脚本并不是很好的做法。

答案1

PHP 默认的脚本超时时间为 30 秒。可以在 php.ini 文件中或通过 set_time_limit() 函数进行更改。

http://php.net/manual/en/function.set-time-limit.php

答案2

您确定脚本正确运行且错误日志中没有错误吗?您当前的超时设置是多少?您如何判断不是时间限制导致的终止?

相关内容