首頁 > 問答 > 主體
程式每次都會去資料庫讀取10個run_status=0的數據,
當一個任務執行的時候,資料庫更新欄位
run_status=-1
表示這個任務被鎖定了。
當然任務執行結束之後,run_status=0,表示已經被解除鎖定。
現在問題來了。當執行任務時,因為某種異常,例如發布的時候伺服器突然中斷程序,這時候,run_status=-1永遠都在鎖定狀態了。但是實際上並沒有在執行中。
現在你需要設計一個機制,防止這種情況的發生,你會如何做?目前環境可以使用redis。
曾经蜡笔没有小新2017-06-26 10:51:39
我發現這個問題太簡單了。設定一個key,過期時間為60秒即可。每次檢測這個key是否存在