Categories: DevOpsPHPShell编程

supervisor如何启动一个应用的多个实例

supervisor是一款非常优秀的进程管理,程序启动、停止,重启都是非常方便,这些都是简单的管理,那supervisor如何启动一个应用的多个实例呢?在特定场景,如可以启动多个消费者去消费产品,能启动多个实例是非常提升效率的。

参考完整配置方式:

$ export CAT_NUMPROCS=3
[supervisord]
logfile = /tmp/supervisord.log

[program:cat]
command = /bin/cat
process_name = %(program_name)s_%(process_num)s
numprocs=%(ENV_CAT_NUMPROCS)s

链接:
https://github.com/Supervisor/supervisor/issues/750

最终因为conf文件不支持ENV_CAT_NUMPROCS,无法做到灵活的个数配置,改成一下配置:

[program:xxx-api-queue-multi]
command=/usr/bin/php7.2 /data/wxx.php test
process_name = %(program_name)s_%(process_num)s
autostart=true
autorestart=true
startretries=3
redirect_stderr=true
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
stdout_logfile=/data/logs/app/axx-%(process_num)s-queue.log
numprocs=10
user=work

启动一个应用的多个实例在要启动多个进程的场景下非常有用,小技巧高效率。

4.5
02
kafkacat调试
如何防止PHP中进行SQL注入?
嘻嘻

嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发!

Recent Posts

Clockwise一款AI日历工具

Clockwise是一款创新的…

2天 ago

Leonardo一个视觉创意AI生成平台

Leonardo.ai提供了一…

2天 ago

DupDub一款终极AI内容创作助手

DupDub 是一个一站式内容…

2天 ago

Murf AI是一款尖端的AI声音生成器

Murf AI是一款尖端的AI…

2天 ago