![长时间运行的 PHP 脚本被终止](https://linux22.com/image/550758/%E9%95%BF%E6%97%B6%E9%97%B4%E8%BF%90%E8%A1%8C%E7%9A%84%20PHP%20%E8%84%9A%E6%9C%AC%E8%A2%AB%E7%BB%88%E6%AD%A2.png)
我在运行 Ubuntu 10.04 的 VPS 上按计划运行许多脚本。每当服务器负载过重时(我运行 munin 作为监控工具),我从日志中注意到许多正在运行的脚本被终止,而我唯一看到的就是日志文件末尾的“终止”。这不是 PHP 的最大执行时间,因为该时间设置得足够长。
这是我的 VPS 提供商为了对抗负载而采取的措施,还是 Ubuntu 为了保持系统响应而采取的措施?根据 munin 的说法,我的 VPS 配置非常奇怪。我看到我有超过 30 GB 的内存,尽管我只支付了 512MB。我还注意到我的内存经常超过 512MB,尤其是在负载过重的时候。这就是为什么我想知道这是我的 VPS 提供商所为。实际上,如果他们直接告诉我我的内存使用量太高,我会很乐意升级到 1GB 套餐,但在我看来,在没有任何通知的情况下终止脚本并不是很好的做法。
答案1
PHP 默认的脚本超时时间为 30 秒。可以在 php.ini 文件中或通过 set_time_limit() 函数进行更改。
答案2
您确定脚本正确运行且错误日志中没有错误吗?您当前的超时设置是多少?您如何判断不是时间限制导致的终止?