我正在尋找一個可擴展的「at」替代,具有高可用性。它必須支持在運行時添加和刪除作業。尋找一個可擴展的「在」實施
一些背景: 我有一個應用程序,我觸發數百萬事件,每個事件只發生一次。我不需要機制(本月的第一個星期日等),只需日期,時間和上下文。
目前我使用的是Quartz scheduler,雖然它是一個非常好的項目,但它仍然很難處理我們拋出的事件數量,即使經過大量調整(分片,增加輪詢間隔等)。 )由於它在下劃線數據庫上執行的基本鎖定。而且,對我們來說這有點矯枉過正,因爲基本上我們有數百萬次的一次觸發器,而且工作量相對較少。
我會很感激任何建議
什麼是圍繞失敗你的要求?例如,如果一臺機器出現故障,您是否希望在更換時出現「錯過」事件? – 2012-04-16 06:26:41
是的,類似於石英。另外,我在一個集羣中運行Quartz,所以總是有一個熱機等待(在Quartz中,每次需要輪詢數據庫以查找作業時,所有節點都會競爭) – 2012-04-16 06:29:10
我只是想知道,如果不使用Quartz,我們可以做些簡單的事情。如果每項工作都必須得到承認,那就更加棘手。如果一份工作運行兩次,懲罰是多少? (例如,您是否承認所有在最後一分鐘執行的作業,每分鐘一次? – 2012-04-16 06:33:44