這個cron構建器的功能
克朗語法是緊的,但很容易出錯:是0 0 * * 1週一還是週日?*/15從零開始嗎?這款構建程式讓你透過點選而不是記憶來構建一個表示式。對於每一個欄位 (秒,分鐘,小時,月份,星期日) 選擇每一個,間隔,特定值或範圍,並將表示式,人類可讀的描述和接下來的10次執行即時更新。它支援經典的Unix cron,六欄位 cron 含秒數,Quartz (Spring和Java排程器使用) 和Kubernetes CronJob。
使用方法
- 選擇您要使用的變體:Unix,秒,石英或Kubernetes。
- 對於每個領域,選擇一個模式。點選晶片來選擇特定值,或者設定"每一個N從M開始"。
- 檢查描述句子和下一個執行列表。選擇一個時區,以看到伺服器看到的執行。
- 複製表示式。您還可以將現有的表示式貼上到輸入中,
變數差異
- 接下來,我們將使用。週日07,其中0和7都是星期天。
- 含秒數: 六個含秒數的欄位,由node-cron和許多庫使用。
- ** 石英:** 秒前,選項年末,週日17與星期天 = 1,並且月日或週日中的一個必須是
?。支援L,W和#。 - **Kubernetes CronJob:**標準五個欄位;時區設定為
spec.timeZone(Kubernetes 1.27+),否則適用控制器的本地時間。為了方便,構建者生成一個YAML片段。
常見的陷
- 在Unix cron中,當月日和週日都被限制時,當****匹配時,就會執行。
- 在分鐘欄位中的
*/15表示0,15,30和45分鐘,而不是"最後一次執行15分鐘後"。 - 節日變化可以跳過或重複在當地時間1點到3點之間執行。在 UTC 時間安排關鍵任務。
- 許多託管的排程器 (GitHub Actions,Vercel Cron) 總是使用UTC。