我正在構建一個應用程序,我需要設置cron作業。我想要做的是在特定的cron應該運行的一個小時內設置具體的分鐘數。例如:如何在google-app-engine(java)中設置複雜的自定義crontab?
- 任務1在上一小時,每2分鐘只能在小時
建設這個下半年
documentation沒有列出任何非平凡的例子。有關如何做的建議?例子會很好。
我正在構建一個應用程序,我需要設置cron作業。我想要做的是在特定的cron應該運行的一個小時內設置具體的分鐘數。例如:如何在google-app-engine(java)中設置複雜的自定義crontab?
建設這個下半年
documentation沒有列出任何非平凡的例子。有關如何做的建議?例子會很好。
鏈接到的文檔似乎表明,不可能只使用Cron for Java(除非它們具有未公開的功能)執行您想要的操作。特別是這似乎不允許多次。
時間指定一天中的時間,如HH:MM在24小時內的時間。
Python版本說完全一樣的東西。
然而,一個解決方案(儘管在CPU使用率方面稍微昂貴一些)將是每分鐘調用一次URL,並從該URL的處理程序調度出您需要的任何其他調用。
換句話說,是這樣的:
<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
<cron>
<url>/run-scheduled-tasks</url>
<description>Run all scheduled tasks</description>
<schedule>every 1 minutes</schedule>
</cron>
</cronentries>
然後在運行計劃任務,檢查數據庫的各個任務上次運行,如果因爲那麼你的觸發這些複雜的情況發生。
如果文檔是正確的,你不能得到你想要的粒度。看起來他們看起來不像他們支持選擇一小時中的某一分鐘。或者一小時的子集。
您可能需要創意。你爲什麼需要這樣的具體時間?
這看起來很愚蠢。寫三個servlet。並從世界其他地方的另一臺UNIX機器安排它們:D。甚至你可以寫一個Java應用程序來做到這一點。享受
是的,這就是我現在想要做的。我的一個cron是調用一個jsp頁面。 response.sendRedirect(jsp)會在這樣一個cron環境中工作嗎? cron環境會理解重定向並呼叫第二頁嗎? – Shreeni 2009-09-07 08:04:09
爲什麼不只是執行適當的代碼,而不是重定向到它? – 2009-09-07 08:39:30
那麼,我正在指揮cron來打一個servlet終點,並不確定如何做一個包含JSP頁面的服務器端。但是我總是可以將其逆轉 - 通過cron創建一個JSP,並在服務器端包含我想要做的所有事情 - servlet和JSP頁面。這似乎工作。 順便說一句,你知道如何做一個服務器端包括從一個servlet內的JSP? – Shreeni 2009-09-07 11:07:35