supervisor 使 celery後台執行

2022-06-08 02:48:06 字數 2995 閱讀 3397

1.安裝 supervisor

pip install supervisor 

2.建立supervisor配置檔案,命令如下:

進入專案檔案

echo_supervisord_conf > supervisord.conf

vim supervisord.conf

在末尾輸入:

[program:celeryd]  # 程序的名字

command=/opt/python/bin/celery worker -a worker --loglevel=info

stdout_logfile=/django/celery/celeryd.log

stderr_logfile=/django/celery/celeryd.log

autostart=true

autorestart=true

startsecs=10

stopwaitsecs=600

[program: projectname]

command=dotnet projectname.dll ; 執行程式的命令

directory=/root/publishing/publishoutput/ ; 命令執行的目錄

autorestart=true ; 程式意外退出是否自動重啟

autostart=true ; 是否自動啟動

stderr_logfile=/var/log/projectname.err.log ; 錯誤日誌檔案

stdout_logfile=/var/log/projectname.out.log ; 輸出日誌檔案

environment=aspnetcore_environment=production ; 程序環境變數

user=root ; 程序執行的使用者身份

stopsignal=int

startsecs=1 ; 自動重啟間隔

在django 目錄下執行 

supervisord
在啟動後台執行之後,可以使用supervisorctl命令檢視後台的日誌資訊,以及重啟服務。

$ supervisorctl tail celeryd # 檢視最後的日誌

$ supervisorctl tail -f celeryd # 持續

$ supervisorctl restart celeryd

$ supervisorctl status celeryd

$ supervisorctl start celeryd

$ supervisorctl stop celeryd

3.supervisorctl檢視和停止supervisor的狀態: 報錯後可檢視/django/celery/celeryd.log

1.安裝 supervisor

pip install supervisor 

2.建立supervisor配置檔案,命令如下:

進入專案檔案

echo_supervisord_conf > supervisord.conf

vim supervisord.conf

在末尾輸入:

[program:celeryd]  # 程序的名字

command=/opt/python/bin/celery worker -a worker --loglevel=info

stdout_logfile=/django/celery/celeryd.log

stderr_logfile=/django/celery/celeryd.log

autostart=true

autorestart=true

startsecs=10

stopwaitsecs=600

[program: projectname]

command=dotnet projectname.dll ; 執行程式的命令

directory=/root/publishing/publishoutput/ ; 命令執行的目錄

autorestart=true ; 程式意外退出是否自動重啟

autostart=true ; 是否自動啟動

stderr_logfile=/var/log/projectname.err.log ; 錯誤日誌檔案

stdout_logfile=/var/log/projectname.out.log ; 輸出日誌檔案

environment=aspnetcore_environment=production ; 程序環境變數

user=root ; 程序執行的使用者身份

stopsignal=int

startsecs=1 ; 自動重啟間隔

在django 目錄下執行 

supervisord
在啟動後台執行之後,可以使用supervisorctl命令檢視後台的日誌資訊,以及重啟服務。

$ supervisorctl tail celeryd # 檢視最後的日誌

$ supervisorctl tail -f celeryd # 持續

$ supervisorctl restart celeryd

$ supervisorctl status celeryd

$ supervisorctl start celeryd

$ supervisorctl stop celeryd

3.supervisorctl檢視和停止supervisor的狀態: 報錯後可檢視/django/celery/celeryd.log

supervisor 程序管理程式的基礎使用

supervisor就是用python開發的一套通用的程序管理程式,能將乙個普通的命令列程序變為後台daemon,並監控程序狀態,異常退出時能自動重啟。第一步 安裝supervisor apt get install supervisor第二步 配置打算後台執行的程式 每個配置檔案預設放在 etc ...

python利器官網 任務排程利器 Celery

celery是python開發的分布式任務排程模組,今天抽空看了一下,果然介面簡單,開發容易,5分鐘就寫出了乙個非同步傳送郵件的服務。celery本身不含訊息服務,它使用第三方訊息服務來傳遞任務,目前,celery支援的訊息服務有rabbitmq redis甚至是資料庫,當然redis應該是最佳選擇...

安裝使用supervisor

yum install python setuptools easy install supervisor 測試安裝是否成功 echo supervisord conf 2.建立配置檔案 建立supervisor配置檔案目錄 etc supervisor mkdir m 755 p etc supe...