我不能在我的項目中使用芹菜,只有django-cron。 我需要每天運行我的任務2次:如何在準確的時間運行django-cron作業
- at 11:59 A.M.
- at 11:59 P.M.
我可以做嗎? 我發現只有RUN_EVERY(分鐘或秒)變量。
我不能在我的項目中使用芹菜,只有django-cron。 我需要每天運行我的任務2次:如何在準確的時間運行django-cron作業
我可以做嗎? 我發現只有RUN_EVERY(分鐘或秒)變量。
我熟悉的Django的cron: https://github.com/andybak/django-cron
你可以設置你的驅動Django的cron來僅在這些時候運行實際的cronjob(這會降低它的用處,如果你想給其他運行工作,但會爲你描述的用例工作)。在這種情況下,你的crontab條目應該是這個樣子:
59 11,23 * * * /path/to/python /path/to/manage.py cronjobs
隨着該crontab條目的Django的cron將只在上午11:59和下午11:59,每天兩次運行,這樣,即使你已經指定了一個作業運行每它只會在那些時間運行。如果cron-job由於任何原因失敗,它將不會在接下來的12個小時內運行。
或者,您可以設置作業運行的每12小時
HOUR * 12
它已經運行一次後,手動編輯數據庫的說,最後一次運行是在晚上11:59或AM(取在未來),它將在那個時間之後每12小時開始運行一次,所以它應該總是在11:59完成。在這種情況下,如果工作失敗,它可能會在12:00或更晚時候開始運行,因爲它試圖恢復。
如果您使用的是與我在開頭提到的不同的django-cron,那麼其中一些想法可能適用,但可能不適用。如果您使用的是開頭提到的那個,請確保您拉入最近的版本,我在5天前提交了一份承諾,這使得作業不會隨着時間漂移(即在61分鐘而不是60分鐘後運行)等等......),他們在某些情況下。
編號下面的答案沒有用。但僅限於我的情況。我無法在工作PC上安裝cron。我需要一個包裝。 Crosplatform。 – SkyFox 2012-04-12 10:49:28
我不認爲有跨平臺cron解決方案。在一個nix系統上,你可以使用cron,而我不確定在Windows上有什麼作用。希望別人有一個想法! – joshcartme 2012-04-12 16:16:10