现在有这么一个业务场景,而且在生产环境中特别容易发生,程序中缓存用了redis去缓存了一个数据结构,但是程序有个版本更新了,之前缓存的数据结构发生了改变,
比如我之前有个类叫做
class A{
String 姓名
Long 年龄
}
现在
class A{
String 姓名
int 年龄
bool 性别
}
当你版本更新完成后,因为之前的数据结构已经和你当前版本不匹配会发生很多问题,比如类型转换失败(多了个字段或者少了一个,之前是Int现在是long无法从小类型转换成大类型)或者读取字段为空等等,这种情况是怎么解决,我们现在都是每次更新新版本后去flush redis
flush又有个本地是因为缓存都没了,会有大量的请求去访问数据库导致数据库崩溃,不知道类似有什么好一点的解决方案吗
项目:JFinal