etcd 锁 Session 超时后怎么处理?
查看完整题解
参考回答
直接回答
Session 一失效,就停止依赖这把旧锁执行写入。停止或取消正在进行的业务工作,避免发出新的副作用请求。恢复后用新会话重新竞争。
讲清原理
收到超时通知时,业务可能还在执行,已经发出的请求也可能到达下游。对 etcd 内的更新可用锁键条件事务,对外部系统应由资源验证围栏令牌。
例子与易错点
旧持有者暂时停顿后恢复,不能继续用原来的锁执行写入。新持有者已经推进序号时,下游应拒绝旧序号写入。
延伸阅读 etcd Lease 怎么给一组键设置失效时间? · etcd 分布式锁的核心步骤是什么? · etcd 锁续租怎么设计? · etcd 锁和 Redis Redlock 怎么比较?
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。