Php 为什么我们需要使用proc_open for workers?
下面是Php 为什么我们需要使用proc_open for workers?,php,worker,proc-open,Php,Worker,Proc Open,下面是PHP worker示例的代码。网络上的所有示例都使用proc_open()并打开子进程来执行作业 带有子进程的Worker.php 但使用php寄存器错误处理程序,我们可以捕获php工作者错误,然后将失败的作业写入数据库 我的问题是,如果我们使用supervisord,为什么我们需要打开子进程 福雷克萨姆勒 没有子进程的Worker.php 使用主管 vi myMailer.conf [program:myMailer] process_name=%(program_name)s_%
PHP worker
示例的代码。网络上的所有示例都使用proc_open()并打开子进程来执行作业
带有子进程的Worker.php
但使用php寄存器错误处理程序,我们可以捕获php工作者错误,然后将失败的作业写入数据库 我的问题是,如果我们使用supervisord,为什么我们需要打开子进程 福雷克萨姆勒 没有子进程的Worker.php 使用主管
vi myMailer.conf
[program:myMailer]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/project/worker.php --memory:128 --delay=0 --timeout=3
numprocs=3
autostart=true
autorestart=true
stdout_logfile=/var/www/project/data/logs/myMailerProcess.log
stdout_logfile_maxbytes=1MB
启动所有工人
supervisorctl start all
myMailer_02: started
myMailer_01: started
myMailer_00: started
myImages_02: started
myImages_01: started
myImages_00: started
然后开始这个过程
监督员
myMailer:myMailer_00 RUNNING pid 16847, uptime 0:01:41
myMailer:myMailer_01 RUNNING pid 16846, uptime 0:01:41
myMailer:myMailer_02 RUNNING pid 16845, uptime 0:01:41
那么为什么我们需要使用proc_open()函数呢
supervisorctl start all
myMailer_02: started
myMailer_01: started
myMailer_00: started
myImages_02: started
myImages_01: started
myImages_00: started
myMailer:myMailer_00 RUNNING pid 16847, uptime 0:01:41
myMailer:myMailer_01 RUNNING pid 16846, uptime 0:01:41
myMailer:myMailer_02 RUNNING pid 16845, uptime 0:01:41