php的supervisord收到SIGCLD表示孩子退出

时间:2011-06-09 04:48:28

标签: gearman supervisord

尝试启动主管并获得一堆这些错误

2011-06-08 23:35:45,833 CRIT Supervisor running as root (no user in config file)
2011-06-08 23:35:45,851 INFO supervisord started with pid 19617
2011-06-08 23:35:45,852 INFO spawned: 'gearman-worker' with pid 19620
2011-06-08 23:35:45,899 INFO exited: gearman-worker (exit status 1; not expected)
2011-06-08 23:35:45,900 INFO received SIGCLD indicating a child quit
2011-06-08 23:35:46,902 INFO spawned: 'gearman-worker' with pid 19621
2011-06-08 23:35:46,943 INFO exited: gearman-worker (exit status 1; not expected)
2011-06-08 23:35:46,944 INFO received SIGCLD indicating a child quit
2011-06-08 23:35:48,945 INFO spawned: 'gearman-worker' with pid 19622
2011-06-08 23:35:48,996 INFO exited: gearman-worker (exit status 1; not expected)
2011-06-08 23:35:48,996 INFO received SIGCLD indicating a child quit
2011-06-08 23:35:51,998 INFO spawned: 'gearman-worker' with pid 19623
2011-06-08 23:35:52,041 INFO exited: gearman-worker (exit status 1; not expected)
2011-06-08 23:35:52,041 INFO received SIGCLD indicating a child quit
2011-06-08 23:35:53,041 INFO gave up: gearman-worker entered FATAL state, too many start retries too quickly
2011-06-08 23:35:57,671 CRIT received SIGINT indicating exit request

我的主管conf:

[supervisord]

[program:gearman-worker]
user=nobody
command=/usr/bin/php -e index.php -a 'qworker'
process_name=%(program_name)s_%(process_num)02d
numprocs=10
directory=/home/test/public_html/
stdout_logfile=/var/log/supervisor/supervisord.log
autostart=true
autorestart=true

任何人都有任何想法?

3 个答案:

答案 0 :(得分:1)

您的PHP程序正在退出,这可能与supervisord无关。

  1. 首先尝试在命令行上运行worker,看看是否有效
  2. 检查supervisord为此流程创建的stderr日志以查找线索

答案 1 :(得分:0)

/ home / test / public_html /已经创建了?

su - nobody并运行脚本来测试它是否像无人一样

答案 2 :(得分:0)

检查本地的apache和mysql服务器是否正在运行,然后将其停止。

1.sudo service apache2 stop
2.sudo service mysql stop

立即尝试在Ubuntu上唤醒如果您的Windows系统具有XAMPP,只需从XAMPP控制面板中停止服务即可。