iT邦幫忙

2026 iThome 鐵人賽

DAY 24
0

並非所有程式都需要持續提供服務。有些工作只要執行一次,例如匯入資料、產生報表或整理檔案。Job 用來管理這類有完成條件的工作,追蹤執行結果,並依設定在失敗時重試,讓任務管理不必完全依賴人工確認。

與長期維持副本的 Deployment 相比,Job 的目標是成功完成指定工作。程式結束時的狀態碼因此十分重要:正常完成通常回傳零,失敗則回傳非零。若程式吞掉錯誤仍回報成功,平台就無法單靠任務狀態判斷真正結果。

CronJob 在排程時間建立 Job,適合定期報表或清理工作。設定時除了時間表,也要考慮時區、錯過排程的處理與工作重疊問題。如果前一輪還沒完成,是否允許下一輪同時執行,會直接影響資料一致性與系統負載。

排程任務不應假設只會執行一次。程式最好具備冪等性,也就是重複執行不會造成重複扣款或重複寫入等副作用。下一篇先用顯示時間的安全範例,觀察排程如何產生任務,並學會在練習結束時停止持續建立新工作。

參考:Job、CronJob


上一篇
DAY 23
下一篇
DAY 25
系列文
我的 Pod 又掛了:30 天學會 Kubernetes 共 25 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言