本地数据结构升级时如何实现可回滚的缓存迁移
简答题中等521 次浏览
参考答案与解析
# 核心结论
本地缓存升级应遵循“版本独立、读取校验、写新后切换、迁移可重入、失败可降级、关键数据可恢复”的原则。缓存不是永久可靠的数据库,键存在也不代表内容完整、结构正确、属于当前用户或仍在有效期内。只要缓存承担登录恢复、草稿、离线操作或首屏加速,就应为每类数据定义结构版本、有效期、用户范围、来源和迁移链,而不能用应用版本号粗略代替数据版本。
# 底层机制
重要缓存可使用统一信封结构,包含结构版本、写入时间、过期时间、用户范围、数据来源、校验信息和实际载荷。读取时应先验证解析是否成功,再验证用户归属、字段类型、有效期和结构版本。旧结构应通过连续迁移函数逐级转换到当前版本,例如由 v1 迁移到 v2,再从 `v
