Laravel 4 Artisan& Guzzle - 导致僵尸进程

时间:2014-01-03 11:23:58

标签: php laravel centos

对于办公室内站点检查状态板,我正在使用L4,以及使用Guzzle将http请求发送到站点列表的工匠命令。

出于某种原因,如果留下足够长的时间,返回服务器并运行top,则表明最多有十几个php artisan check:sites进程仍在运行,导致服务器上出现内存问题,以及其他进程因内存不足错误而失败。

有谁知道可能导致这种情况的原因是什么?我认为它可能是Guzzle / php-curl泄漏记忆,但我很想知道是否有办法阻止它这样做。

正如旁注 - cron执行的php命令实际上是使用-d max_execution_time=120标志设置120秒的超时,认为这可能会在两分钟后完全杀死任何进程,但似乎没有工作。

1 个答案:

答案 0 :(得分:0)

您可以检查Guzzle请求的超时并将其设置为少于10秒

$request = $client->get('http://test.com', [], ['timeout' => 10]);