比你的进程更長命的 lock:分散式租約的實際運作原理
記憶體中的mutex會在伺服器重啟後消失。本文說明具有 fencing token 與 TTL 的分散式租約如何防止當機後的重複執行,以及它們仍然會失效的地方。
你的 撐不過 。它也撐不過 OOM、部署推出或節點重啟。程序結束的瞬間,lock 就消失了。如果那把 lock保護的是一個排程任務、資料遷移或領導者選舉,你現在會有兩個程序都認為自己是唯一在執行的那個。 這不是你的mutex有 bug。這是類別錯誤。程序本地的lock無法保護叢集範圍的資源。…