WindowsデーモンCeleryサービス設定
3140 ワード
WindowsデーモンCeleryサービス設定
1.シナリオ
Windows環境でのデーモンプロセス方式でceleryを実行するいくつかの実装方法を検索しました. NSSM NSSMはWindows環境の次のインストールフリーのサービス管理ソフトウェアで、Windowsサービスが自動起動を設定できるようにアプリケーションをサービスにカプセル化することができます.また、プログラムの運転状態を監視し、プログラムが異常に中断した後に自動的に起動し、デーモンプロセスの機能を実現することができる.グラフィックインタフェースの操作だけでなく、コマンドラインの設定も完全にサポートされています. Forever Foreverは、特定のスクリプトが永続的(永続的)に実行されることを保証するための簡単なコマンドラインインタフェースツールです.Foreverの簡単なインタフェースはそれを実行Nodeにする.jsアプリケーションとスクリプトの小さな導入に理想的です.振り回された後、foreverは直接実行するPythonスクリプトを管理できるが、celery workerを実行すると複雑なパラメータを設定できないことが分かった. Task Scheduler Windowsが持参した計画タスク、celeryの公式サイトには、Windows Tip:Runアプリケーションin the background using Task Schedulerというスキームが記載されていますが、試みはまだ行われていません. 自分でPythonデーモンスクリプトを書く時間の関係で、この案は試していないので、興味があれば以下の文章を参考にすることができます.Python Windowsサービスプログラムの作成:PythonをWindowsサービスとしてPythonインスタンスの概要の5 Pythonデーモンとスクリプトの一例としてpython版デーモンとWindowsサービス を実行する
2.NSSM
2.1 NSSMインストール
NSSM圧縮パッケージを解凍し、インストールされたディレクトリに配置します.NSSMのwin 64(私のパソコンは64ビット)を環境変数に追加します.
Celeryのバージョンは4.0を超えることはできません.4.0以降はwindowsをサポートしないからです.
2.2 NSSMインストールceleryサービス
管理者として端末を開く必要があります.そうしないと、サービスが確立できない可能性があります.
2.2.1 Beatサービスのインストール
nssm install celery-demo-beat “C:\Python27\Script\celery.exe”
celery-demo-beatというサービスをインストールします.プログラムはceleryです.
nssm set celery-demo-beat AppDirectory D:\celery-demo
サービス実行フォルダを設定するのがceleryプログラムがあるフォルダです
nssm set celery-demo-beat AppParameters -A celery_app -beat --loglevel=debug --config=run
アプリケーションの実行パラメータを設定します.
nssm start celery-demo-beat
アプリケーションサービスの開始
nssm status celery-demo-beat
2.2.2 workerサービスのインストール
nssm install celery-demo-worker “C:\Python27\Script\celery.exe”
celery-demo-workerサービスのインストール
nssm set celery-demo-worker AppDirectory D:\celery-demo
作業ディレクトリの設定
nssm set celery-demo-worker AppParameters -A celery_app worker --loglevel=debug -c 1
運転パラメータの設定
nssm start celery-demo-worker
nssm status celery-demo-worker
エラーが発生した場合、コマンド設定のエラーが一般的である場合は、チェックしてください.
2.3 NSSMその他のコマンド
2.3.1インストールサービス
nssm install […]
2.3.2サービスの開始
nssm start
2.3.3サービス停止
nssm stop
2.3.4サービスの再起動
nssm restart
2.3.5サービスステータスの表示
nssm status
2.3.6ハンドホイール回転ログファイル
nssm rotate
2.3.7サービスの削除
nssm remove [confirm]
2.3.8構成情報の取得
nssm get [subparameter]
2.3.9構成を個別に設定する
nssm set [subparameter] value
2.3.10構成のリセット
nssm reset [subparameter]
2.3.11サービスの一時停止/継続
nssm pause nssm continue
1.シナリオ
Windows環境でのデーモンプロセス方式でceleryを実行するいくつかの実装方法を検索しました.
2.NSSM
2.1 NSSMインストール
NSSM圧縮パッケージを解凍し、インストールされたディレクトリに配置します.NSSMのwin 64(私のパソコンは64ビット)を環境変数に追加します.
Celeryのバージョンは4.0を超えることはできません.4.0以降はwindowsをサポートしないからです.
2.2 NSSMインストールceleryサービス
管理者として端末を開く必要があります.そうしないと、サービスが確立できない可能性があります.
2.2.1 Beatサービスのインストール
nssm install celery-demo-beat “C:\Python27\Script\celery.exe”
Service "celery-demo-beat" installed successfully!
celery-demo-beatというサービスをインストールします.プログラムはceleryです.
nssm set celery-demo-beat AppDirectory D:\celery-demo
Set parameter "AppDirectory" for service "celery-demo-beat".
サービス実行フォルダを設定するのがceleryプログラムがあるフォルダです
nssm set celery-demo-beat AppParameters -A celery_app -beat --loglevel=debug --config=run
Set parameter "AppParameters" for service "celery-demo-beat"
アプリケーションの実行パラメータを設定します.
celery_app
はceleryアプリケーション名です.nssm start celery-demo-beat
celery-demo-beat: START:
アプリケーションサービスの開始
nssm status celery-demo-beat
SERVICE_RUNNING
2.2.2 workerサービスのインストール
nssm install celery-demo-worker “C:\Python27\Script\celery.exe”
Service "celery-demo-worker" installed successfully!
celery-demo-workerサービスのインストール
nssm set celery-demo-worker AppDirectory D:\celery-demo
Set parameter "AppDirectory" for service "celery-demo-worker"
作業ディレクトリの設定
nssm set celery-demo-worker AppParameters -A celery_app worker --loglevel=debug -c 1
運転パラメータの設定
nssm start celery-demo-worker
celery-demo-worker: START:
nssm status celery-demo-worker
SERVICE_RUNNING
エラーが発生した場合、コマンド設定のエラーが一般的である場合は、チェックしてください.
2.3 NSSMその他のコマンド
2.3.1インストールサービス
nssm install […]
2.3.2サービスの開始
nssm start
2.3.3サービス停止
nssm stop
2.3.4サービスの再起動
nssm restart
2.3.5サービスステータスの表示
nssm status
2.3.6ハンドホイール回転ログファイル
nssm rotate
2.3.7サービスの削除
nssm remove [confirm]
2.3.8構成情報の取得
nssm get [subparameter]
2.3.9構成を個別に設定する
nssm set [subparameter] value
2.3.10構成のリセット
nssm reset [subparameter]
2.3.11サービスの一時停止/継続
nssm pause nssm continue