ホームページ  >  記事  >  運用・保守  >  Linux は PHP 起動タスク スクリプトを定期的に実行します (ステップ分析)

Linux は PHP 起動タスク スクリプトを定期的に実行します (ステップ分析)

铁手
铁手オリジナル
2022-08-12 20:53:451648ブラウズ

最近、仕事で時々 PHP サービスを再起動する必要がある状況に遭遇したため、スケジュールされた実行スクリプトを使用して PHP プロセスを再起動することを考え、Linux を使用して実行スクリプトを作成しました。手順は次のとおりです。

第 1 章 ステップ 1: スケジュールされたスクリプト ファイル cron.sh を作成します (ファイル名は任意に .sh で終わります)。

参照コードは次のとおりです (log.txt は、出力内容を簡単に表示するためのログ ファイルです):

echo "supervisorctl restart..." >> /var/www/html/log.txt
start_time=$(date)
echo $start_time >> /var/www/html/log.txt
echo >> /var/www/html/log.txt
supervisorctl restart all
end_time=$(date)
echo "supervisorctl end" >> /var/www/html/log.txt
echo $end_time >> /var/www/html/log.txt
echo >> /var/www/html/log.txt

私は、supervisorctl を使用して PHP プロセスを管理します (公式ドキュメントを確認できます) supervisorctl) を使用するため、もちろん他のメソッドも使用できます。

ここでは、supervisorctl の使用法を簡単に説明する例を示します。

まず、supervisorctl をインストールする必要があります。ターミナルで yum install -yvisor を実行します。

supervisorct は、デフォルトで /etc/supervisor ディレクトリにインストールされます;

完了後, /etc /supervisor パスの下に設定ファイル supervisord.conf があります。これを開くと、最後に [include] があり、次のようにファイルを設定します。 /etc/supervisor/conf.d ディレクトリに設定ファイル;

たとえば、ファイル test.conf を作成します (私の側は PHP laravel フレームワークによって実行される消費タスク キューです)。次のように:

files = /etc/supervisor/conf.d/*.conf

ステップ 2:

次に、スケジュールされたタスクの内容を書き込み、ターミナル コンソールに vim /etc/crontab と入力して Enter キーを押し、ファイルに次のコードを書き込みます。 :

[program:rabbitmq-comsumer-1]
process_name=%(program_name)s_1
command=php /var/www/html/app/artisan rabbitmq:consumer 1
autostart=true
autorestart=true
user=root
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/html/app/storage/logs/rabbitmq-comsumer-log-1.log
注: 0 */2 * * * (これはスケジュールされたタスク実行の構文です。2 時間ごとに実行します。つまり、0:00、2:00、...; に自動的に実行されます。関連する構文については Baidu を参照してください)

ステップ 3:

ファイルを保存して有効にします (このステップは非常に重要です!) 次のコマンドを実行します:

0 */2 * * * root  /var/www/html/cron.sh
最後に、次のコマンドを使用して、変更された結果を表示できます。0 */2 * * * root / var/www/html/cron.sh が表示された場合は、変更が有効になったことを意味します:

crontab /ect/crontab

概要:

上記は、直ちに実行する必要がない限り、Linux のスケジュールされた実行タスク スクリプトを使用して php サービスを再起動する方法です。この方法では、コマンドを手動で実行する必要はありません。 。 さらにエキサイティングなコンテンツについては、php 中国語 Web サイトの他の関連記事にご注目ください。

以上がLinux は PHP 起動タスク スクリプトを定期的に実行します (ステップ分析)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。