单个云账号或资源同步卡住并提示锁超时,如何排查?
问题说明
本文用于排查Redis整体可用,但某个云账号或单个资源同步长期不执行、被跳过或日志提示锁获取超时的问题。该场景属于分布式锁竞争或遗留锁,不等同于Redis连接失败。
现象
- 只有一个云账号或少量资源不同步,其他账号正常。
- 手动同步接口返回成功,但目标服务没有进入实际同步流程。
- 日志出现
resource sync get lock timeout!、one resource in cloud sync get lock timeout!或Failed to acquire lock during resource sync。 - Redis
PING正常,登录和其他缓存功能无明显异常。 - 相同账号被重复提交同步,或上一次同步进程异常退出后问题出现。
适用环境
- 产品:ZCenter
- 版本:5.1.0
- 组件:VM、RDS、OSS、Container、Security资源同步及Redis/Redisson
可能原因
- 同一账号正在执行同步,新的请求在1秒内未获取账号锁而退出。
- 同一资源正在被其他同步线程处理,等待约120秒后仍未获得资源锁。
- 持锁进程异常退出,锁仍处于固定租约期内。
- 同步运行时间超过锁租约,出现锁过期后并发重入或重复创建。
- 多实例使用相同Redis数据库,
cloudEnvId + originalId
登录查看余下内容,以及更多产品问题排查与解决经验。
登录