加载中...

因果一致性(Causal Consistency)要求:若操作 B 因果依赖于操作 A(例如 B 读到了 A 的结果,或同一会话中 A 先于 B),则任何节点都必须先看到 A 再看到 B;无因果关系的并发操作则允许不同节点以不同顺序观察。
系统通常用版本向量或依赖追踪记录因果关系,副本在收到更新时先等待其依赖全部就位再应用。它是无需共识、可在分区下保持可用的最强一致性模型之一。
社交场景中"评论不能先于原帖出现"是典型需求。MongoDB 的因果一致会话、Azure Cosmos DB 的一致性档位、学术系统 COPS 均提供该保证。相比线性一致,它延迟低、可用性好;代价是并发写仍可能观察顺序不一,需要额外的冲突处理。

登录 后参与讨论
暂无讨论,来发表第一条评论吧