2012-04-11 12 views
0

私のプロジェクトでは、django-cronのみセロリを使用できません。 私の仕事を1日2回、実行する必要があります:正確な時間にdjango-cronジョブを実行するには

  • at 11:59 A.M.
  • at 11:59 P.M.

私はそれを行うことはできますか? 変数RUN_EVERY(分または秒単位)のみが見つかりました。

+0

いいえ、以下の回答は役に立たなかった。しかし、私の場合だけです。私は働いているPCにcronをインストールすることはできません。私は1つのpackegeですべてが必要です。クロスプラットフォーム。 – SkyFox

+0

クロスプラットフォームのcronソリューションはないと思います。 nixシステムではcronを使うことができますが、Windows上で何が動作するのか分かりません。うまくいけば、他の誰かがアイデアを持っています! – joshcartme

答えて

1

私はこのジャンゴ-cronのに慣れています: https://github.com/andybak/django-cron

あなたはそれらの時にのみ実行するようにジャンゴ-cronのを駆動し、あなたの実際のcronジョブを設定することができ(これは、あなたがそれを他の実行したい場合には有用だ低減するであろうあなたが記述したユースケースのために働くでしょう)。その場合、あなたのcrontabエントリは次のようになります。そのcrontabエントリのDjangoのはcronで

59 11,23 * * * /path/to/python /path/to/manage.py cronjobs 

を唯一のジョブは、すべて実行することを指定した場合でも、そう11:59と午後11時59分一日二回実行されますそれはその時にのみ実行されます。何らかの理由でcron-jobが失敗した場合、それは次の12時間は実行されません。

また、それは一度実行した後、手動で、12時間ごとに

HOUR * 12 

を実行するジョブを設定できます(最後の実行は、午後11時59分または午前にあったと言うことで、データベースを編集し方その後は12時間ごとに実行されるため、常に正確に11:59に当てる必要があります。この場合、ジョブが失敗した場合、バックアップをキャッチしようとすると、ジョブが12:00以降に実行される可能性があります。

私が冒頭で言及したものとは異なるdjango-cronを使用している場合、これらのアイデアのいくつかは適用可能かもしれませんが、そうでないかもしれません。あなたが最初に述べたものを使用しているのであれば、最近のバージョンを引っ張ってください。5日前にコミットして、ジョブが時間をずらさないようにします。等)...)、彼らは特定の状況にあった。

関連する問題