この質問はすでに行われていることは知っていますが、答えがわからなかったか、当てはまりませんでした。
CPanelを使用してCronジョブを設定するために1分ごとに呼び出すphpスクリプトがあります。スクリプトの性質上、1分強でオーバーランする可能性があるため、最初のスクリプトが完了していない場合に次のスクリプトの実行を停止する方法を知る必要があります。
CENTOS 5.5を実行しているVPSがあり、WHMとCPanelにアクセスできます。私はこれまでLinuxを使用したことがないので(昨日サーバーを入手したばかりです)、何をしているのかわかりません。可能であれば、助けていただければ幸いです。さらに情報を提供する必要がある場合は、お知らせください(現時点で必要な情報はわかりません)。
ありがとう。
Cronジョブとしてbashスクリプトを使用します
cron.sh
#!/bin/bash
$lockfile=/tmp/lock.file
if [ ! -e $lockfile ]; then
touch $lockfile
php /path/to/php/script.php
rm $lockfile
else
echo "script already running"
fi
Psで何かを実装することで問題が解決するかどうか興味があります。簡単だろうps -e | grep script_name.php | awk '{print $4}'
十分ですか?スクリプトが実行されているかどうかは間違いなくわかります。誰かが事前にスクリプトを強制終了したかどうかを確認する必要はありません。ロックファイルの作成と削除は、これよりも優れている/高速ですか?
よくわかりません。長所と短所を知りたいだけです。ありがとう