具有supervisord的Laravel队列侦听器导致核心转储

时间:2013-07-25 17:19:31

标签: php laravel laravel-4 supervisord

我正在使用Laravel 4及其队列实现来完成一些异步任务,我想使用supervisord来管理工作进程(基本上是artisan queue:listen),就像我过去用其他框架做的那样。

当我手动运行supervisord时,它会启动工作进程,但是当我将其作为服务运行时,工作进程会立即处理此消息:

2013-07-25 09:51:32,162 INFO spawned: 'myproject' with pid 4106
2013-07-25 09:51:32,875 INFO exited: myproject (terminated by SIGSEGV (core dumped); not expected)

没有stdout或stderr输出。

这是工人的监督配置(没什么特别的):

[program:myproject]
command=php artisan queue:listen --queue=queue_name iron --env=staging
directory=/home/myuser/myproject
stdout_logfile=/var/log/supervisord/myproject.stdout
stderr_logfile=/var/log/supervisord/myproject.stderr

它运行的服务器是一个CentOS 6.4 64位,来自cPanel / WHM的PHP 5.3.25(不是我的选择,它是一个空闲的服务器,我们做不了什么)。

关于可能导致问题的任何想法?

2 个答案:

答案 0 :(得分:4)

几个月前我遇到过这个问题,因为我的生活中我无法准确记住解决方案是什么,但我有理由相信我的问题是我至少需要为它创建日志文件要写,它不会自己创建它们。

答案 1 :(得分:4)

我知道这是一个老话题 - 我在Laravel工作正常后解决了这个问题。 bootstrap文件夹中有一个compiled.php。我删除它并且一切正常(我知道这导致了Laravel 5中的问题)

可能对某人有帮助