舉個例子,
Redis集群通常是主備集群;
Redis的Sentinel組件會監視集群的狀態,可能僅因為Sentinel組件所在服務器和主Redis的網絡通訊出現了問題(並不是主Redis故障),導致發現當前的“主Redis”不可用就會把“從Redis”設為“主Redis”;在做這個主備轉換前后,原來已鏈接“老主Redis”的客戶仍然在處理,新加入的鏈接交給了“新主Redis”,這就導致了“不一致性” ;
所以Redis在CAP中做到了AP,所以這種情況下 作為分布式鎖會有問題、作為隊列不能保證消息只被消費一次;
在上邊的Redis集群中 “舊主Redis“對於管理者Sentinel不可見,處於管理網絡的盲點,但卻又提供着服務;
我理解,“網絡分區”是指上邊的情況,是意外出現的 而不是人為規划的
