一、Supervisor 安裝(centos7 還有另一個進程守護命令 Systemd )
二、Supervisor 守護進程
三、Supervisor 守護 Celery 配置文件
1. python manage.py celery -A HttpRunnerManager worker --loglevel=info # 啟動 worker(Celery 職程服務器)
2. python manage.py celery beat --loglevel=info # 啟動定時任務監聽器
3. celery flower --address=0.0.0.0 --port=5555 # 啟動任務監控后台
[root@gitlab conf.d]# cat celery_beat.ini [program:CeleryBeat] #CelertBeat 為程序的名稱 command=/root/.envs/hrm/bin/python manage.py celery beat --loglevel=info #需要執行的命令 directory=/root/TestProject/HttpRunnerManager #命令執行的目錄 #environment=ASPNETCORE__ENVIRONMENT=Production #環境變量 user=root #用戶 stopsignal=INT autostart=true #是否自啟動 autorestart=true #是否自動重啟 startsecs=3 #自動重啟時間間隔(s) stderr_logfile=/root/TestProject/logs/celerybeat.err.log #錯誤日志文件 stdout_logfile=/root/TestProject/logs/celerybeat.out.log #輸出日志文件
[root@gitlab conf.d]# cat celery_worker.ini [program:CeleryWork] #CeleryWork 為程序的名稱 command=/root/.envs/hrm/bin/python manage.py celery -A HttpRunnerManager worker --loglevel=info #需要執行的命令 directory=/root/TestProject/HttpRunnerManager #命令執行的目錄 #environment=ASPNETCORE__ENVIRONMENT=Production #環境變量 user=root #用戶 stopsignal=INT autostart=true #是否自啟動 autorestart=true #是否自動重啟 startsecs=3 #自動重啟時間間隔(s) stderr_logfile=/root/TestProject/logs/celeryworker.err.log #錯誤日志文件 stdout_logfile=/root/TestProject/logs/celeryworker.out.log #輸出日志文件
[root@gitlab conf.d]# cat celery_flower.ini [program:CeleryFlower] #CeleryFlower 為程序的名稱 command=/root/.envs/hrm/bin/celery flower --address=0.0.0.0 --port=5555 #需要執行的命令 directory=/root/TestProject #命令執行的目錄 #environment=ASPNETCORE__ENVIRONMENT=Production #環境變量 user=root #用戶 stopsignal=INT autostart=true #是否自啟動 autorestart=true #是否自動重啟 startsecs=3 #自動重啟時間間隔(s) stderr_logfile=/root/TestProject/logs/celeryflower.err.log #錯誤日志文件 stdout_logfile=/root/TestProject/logs/celeryflower.out.log #輸出日志文件