如何透過cron高效規劃100個作業?

如何透過cron高效規劃100個作業?

我正在安排透過 scrapy 和 cron 部署的蜘蛛。每隻蜘蛛一行。現在有 100 隻蜘蛛,計劃和管理變得相當困難。管理大量作業的推薦方法是什麼?查看暫停/恢復作業所需的潛在維護時間以及其他事項,例如重疊作業等。

答案1

不要使用計劃任務

如果您的需求很複雜,您可能會考慮使用更高級的產品,該產品旨在運行複雜的計劃(分佈在多個伺服器上)並支援觸發器、作業依賴項、錯誤處理、重試和重試監控等。作業調度和/或“工作負載自動化”。

答案2

如果您需要安排任務運行時間,而不是運行頻率,您可以繼續使用 cron。為了避免任務的交叉執行,您可以讓cron 只執行一個簡短的腳本,將任務新增至某種佇列(redis、rabbitmq、sql 資料庫),並讓另一個腳本使用該佇列並按順序或以有限的並發執行工作負載。這當然會帶來另一類問題,例如如何處理阻塞的工作負載,阻止其他工作負載運作:)

相關內容