有沒有辦法在 ubuntu/debian/linux 中對腳本進行排隊?

有沒有辦法在 ubuntu/debian/linux 中對腳本進行排隊?

我有一個奇怪的問題(至少對我來說!),但我不知道如何解決它。

背景

我有一些批次作業(透過 cron 呼叫的 python 腳本或由 bash 腳本呼叫的 python 腳本)。例如,20 個 ETL 作業和 20 個資料處理作業。這發生在不同的時間。

目前的方法

我保持伺服器開啟並運行 cron 作業,以便在預定時間運行腳本(它們並非全部同時運行……一個可能在下午 1 點運行,而另一個可能在下午 5 點運行)。現在效果很好

問題 我想省錢,而且作業不必完全在我設定的時間開始,它們可能需要幾分鐘或一兩個小時,所以我正在考慮使用搶佔式實例來按計劃啟動伺服器。

我正在考慮每小時啟動一次伺服器,然後它處理任何超出其計劃但尚未完成的作業。

我不知道該怎麼做!有沒有辦法可以在 ubuntu 安排這個?我想設定一個外部資料庫並有一個腳本來查詢它以查看需要啟動哪些進程,但我覺得這有點過分了,我懷疑這可能是一個常見問題,有一個更簡單的解決方案。

請告訴我!

相關內容