2017-05-16 5 views
0

端末からのループで実行されるPythonスクリプトmacro.pyをテストしています。Pythonスクリプトを起動および停止するためのLaravelの設定方法

Laravelアプリケーションをコード化して、サーバ上でmacro.pyという複数のインスタンスを実行できるようにして、いつでも起動して停止することができます。

これはあまり難しくありませんか?

+0

どのようにPythonスクリプトを実行できますか? – Webinion

+0

私は通常、 'python macro.py'を端末の – Callum

+0

に入れてctrl + cを実行すると、この[package](https://laravelcollective.com/docs/5.4/ssh)を使ってlaravelを使ってcmdコマンドを起動することができます – Webinion

答えて

1

外部スクリプトを同じ方法で呼び出します(in this question)。揮発性メモリ(データベース、ファイル)にプロセスPIDを格納することは非常に重要です。検索されたpid番号は、後でkill -9 process_pidコマンドを使用してプロセスを停止するために使用できます。

pythonスクリプトがバックグラウンドで(アプリケーションから呼び出された開始アクションと停止アクションの間に)「ブレーク」する場合、他のプロセスが同じPID番号を取得する可能性があります。私はプロセス起動時間とPID番号も保存することをお勧めします。プロセスを強制終了する前に、保存された起動時間の追加チェックを行い、テストが合格した場合にのみプロセスを終了します(そうでなければ、プロセスが予期せず停止し、ユーザーインターフェイスに適切な情報が表示されることを前提とします)。

関連する問題