我正在尋找更好的解決方案來處理負載平衡環境中的cron任務。Cron在負載均衡的Web服務器上的任務
目前有:在負載平衡器後面的3個CentOS的服務器上運行
- PHP應用程序。
- 任務需要定期運行,但一次只能在一臺機器上運行。
- 設置好舊的cron以在第一臺服務器上運行這些任務。
- 如果第一臺服務器出於任何原因無法使用,則會出現問題。
尋找:
- 東西更強大和分散式。
- 對任務進行負載平衡,以便多個任務只運行一次,但在隨機/不同服務器上分散負載。
- 防止在第一臺服務器出現故障時不運行任務。
- 能夠使用Web界面理想地管理任務並查看彙總報告。
- 如果出現任何問題,通知。
該解決方案不需要在PHP中實現,但它會很好,因爲它可以讓我們輕鬆地調整它,如果需要的話。
我發現了兩個項目,看起來有保證。 GNUBatch和Job Scheduler。最有可能進一步測試,但我不知道是否有人有更好的解決方案上述。
謝謝。
一次一個可以通過一個cron作業解決最可靠的服務器(或其他服務器)完成其中一個實際的工作e服務器隨機通過SSH。由於只有一臺機器負責調度,所以您不必擔心所有服務器之間的同步/鎖定。 –