🎯 什麼情境該想到我
當你有很多節點/副本、要讓它們的狀態「最終趨於一致」,又不想靠單一協調者時。
⚙️ 怎麼用
- Gossip(八卦協定):每個節點週期性隨機挑幾個對象交換資訊,像謠言一樣擴散。去中心化、可擴展、對節點增減有韌性。常用於成員管理、故障偵測、狀態傳播。
- 反熵(Anti-Entropy):定期比對副本差異並修補,讓飄移的副本收斂。用 Merkle Tree 高效找出「哪裡不同」,只傳差異。
- 前景 vs 背景修復:讀取時順手修(read repair)+ 背景反熵掃描,兩者互補。
適合「最終一致」的大規模系統(Cassandra、DynamoDB 風格)。
🧪 我實際套用的紀錄
- 2026-07-15:(待填)
⚠️ 注意
- Gossip 是最終一致、有傳播延遲;需要「立刻強一致」的場景別用它,改用共識。
🔗 相關工具
- 工具-故障偵測 —— Gossip 最常見的用途之一就是傳播「誰活著」的判斷結果
- 工具-資料複製 —— 反熵補的正是複製留下的破口:副本漂移後怎麼慢慢對齊
- 工具-線性一致性與共識 —— 對照組,反熵給的是最終一致,需要強一致時得改走共識協定