cronjobは実際にいつ始まりますか?

cronjobは実際にいつ始まりますか?

私の質問は、次のように分単位で実行されるcronjobを見て観察した結果です。

12:00:15 (cron started)
12:01:20 (cron started)
12:02:02 (cron started)
.
.
.

cronが1分ごと(60秒ごと)実行されないようです。 cronは実際にデータベースを選択して更新するためにmysqlクエリを実行するPHPスクリプトを実行します。 2秒以内に完了します。

毎分予約されたcronjobをその分の開始(12:00:00)で実行する必要がありますか、それとも別の特定の秒で実行する必要がありますか?

システム負荷はこれに関連していますか? cronを起動した瞬間から起動する方法はありますか?

答え1

あなたが観察したことは私を全く驚かせず、cron秒単位まで正確ではありません。ジョブを実行するようにプログラムした瞬間からジョブが実行されると信じることができますが、実際にはより高い精度に頼ってはいけません。

正確な瞬間に作業を開始する必要がある場合は、事前に開始し、スクリプトにその瞬間が到着するまで待つ必要があります。 1分がサポートされる最小間隔なので、cronこれを開始するためのさまざまなオプション(Pythonスクリプトなど)を考えてみましょう。

(*) 下記のコメントを参照

関連情報