首页 新闻 会员 周边 捐助

@CacheEvict 失败时@Transactional 成功,数据一致性问题

0
悬赏园豆:50 [已关闭问题] 关闭于 2024-04-17 11:46


如你所见一个保存方法中(细节已隐藏),data成功保存,在@CacheEvict删除时报错(可能是redis挂了吧),事务没有进行回滚,造成不一致问题。请问有解决方案吗?

景伟·郭的主页 景伟·郭 | 初学一级 | 园豆:130
提问于:2024-04-17 10:58
< >
分享
所有回答(1)
0

这个问题涉及到强一致性和弱一致性的问题。如果要求强一致性可以在业务代码中加入删除redis代码保证事务一致性,网上也有设置缓存和事务执行顺序的解决方案,我并未尝试,如果要求若一致性可以使用mq进行延迟双删处理。

景伟·郭 | 园豆:130 (初学一级) | 2024-04-17 11:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册