mysql 并发数据一致性_高并发和高性能系统中数据一致性问题和应对

读过前面一篇文章《系统架构升级之道,关注关键服务依赖》就知道,我们的应用系统中的关键服务绝大部分都会是对数据库的依赖。

如果只有一个数据库服务器,数据一致性问题也就不存在了。

可是,随着系统访问量、数据量的不断增长,数据库出现多个服务器,又出现缓存服务,又要拆分数据库,还要分拆到不同的子应用等等。

这样一来,数据一致性问题就会变得越来越突出。

这次,咱们就来分析下这个问题会涉及到哪些方面,严重程度,以及如何应对。

AAffA0nNPuCLAAAAAElFTkSuQmCC

我们来看这样一个数据流程。

1 用户提交一个订单(2个不同商家各一件商品)——数据源头

2 应用服务器验证用户信息、订单信息、库存信息等等,然后将这个订单发送到订单消息队列——消息队列

3 订单处理服务器从消息队列中拿到新订单,接下来的处理,可能做的数据操作有:

3.1 生成一个订单/也可能会分拆为两个订单

3.2 更新两个商品库存数量

3.3 更新商家的销售数据

3.4 生成订单对应的支付信息

3.5 生成用户订单成功的状态信息

上面的数据处理中,涉及到的数据有:订单数据、商品数据、商家数据、支付数据、用户数据。

涉及到的应用和服务有:前端应用系统,消息队列,后端应用系统,数据库,缓存,甚至订单、商

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值