Java for You 后端开发 并发修改下的数据一致性保证

并发修改下的数据一致性保证

业务场景:扣款业务。

解决方案

悲观锁方案:

  • 分布式锁互斥
  • 缺点:引入额外组件(redis/zk),降低吞吐量、

对于小概率不一致,乐观锁方案:

  • 在set写回的时候,加上初始状态的条件compare,只有初始状态不变时,才允许set写回成功,Compare And Set(CAS),是一种常见的降低读写锁冲突,保证数据一致性的方法

总结

高并发“查询并修改”的场景,可以用CAS(Compare and Set)的方式解决数据一致性问题。对应到业务,即在set的时候,加上初始条件的比对即可。

本文由 java4u.cn 发布,可自由转载、引用,但需署名作者且注明文章出处(作者:白色蜗牛,出处:java4u.cn)。如转载至微信公众号,请在文末添加作者公众号二维码。 https://java4u.cn/backend/3489.html

作者: 蜗牛

下一篇

已经没有了

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

公众号:蜗牛互联网

在线咨询: QQ交谈

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部