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” 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