概念定义
用户保存、页面刷新、旧值回 stare——这就是读写一致性违例:复制或缓存给出了比用户自己的写入更旧的视图。该保证说:一个会话的读,永不回退到它自己的写之前。
工作机制
机制包括:会话粘住接受写入的副本直至确认传播;时间戳/向量跟踪让读等待或路由到超过写入的副本;写穿缓存在下一次会话读时绕行;客户端读令牌携带最近写版本。各自以延迟或复杂度换保证。
使用场景
一切“保存后即读”的用户可见流程:资料、设置、购物车、发布内容预览。多设备同步把门槛抬到跨设备单调读,需要跨会话协调。
常见误区
最终一致存储并非不能提供它:按会话粘住或跟踪即可——它弱于线性一致但对体验足够。副本轮询读会在保存后展示旧资料;用户可编辑资源上的长 TTL 旁路缓存制造“保存后陈旧”经典 bug。会话亲和把负载聚到一个副本且与故障转移相性差——要配合滞后跟踪;CDN 层必须参与:用户作用域资源要每用户键或认证边缘缓存,否则违例从数据库挪到边缘。