写点什么

[架构实战营] 模块七作业

作者:Geek_0ed632
  • 2022 年 1 月 30 日
  • 本文字数:418 字

    阅读完需:约 1 分钟

题目分析

题意总结

如题为虚拟物品商场的异地多活设计;

业务特性

  1. 虚拟商品不受库存影响;

  2. 虚拟商品不受物流影响,所以所有的商品购买后都即时到账户;

业务分类

  1. 商品:单次商品购买,多次商品购买;

  2. 点券:充值点券,退还点券;

这里充值和退还不是最关键业务,商品的购买才是关键业务;

数据分类

商品

  1. 高价值商品购买:强一致性,不可丢失;

  2. 单次商品购买:最终一致,不可丢失;

  3. 多次商品购买:最终一致,不可丢失;

点券

  1. 充值点券:强一致性,不可丢失;

  2. 退还点券:强一致性,不可丢失;

数据同步

  1. 强一致性,不可丢失:直接使用业务事务保证强一致性,将数据在一次事务内直接写入两个数据中心的数据库中;

  2. 最终一致,不可丢失:使用数据库同步方案,最终保证数据最终一致性;

异常处理

  1. 异常情况下,因为强一致性数据,无法完成业务事务,所以会全部失败;

  2. 但是可以保证余额是正常的,可以使用余额进行商品的购买;

  3. 对于数据中心失效时部分商品没有被同步至备份数据中心,可以通过对账日志进行商品的补还,并进行适当补偿;

发布于: 刚刚阅读数: 2
用户头像

Geek_0ed632

关注

还未添加个人签名 2019.08.26 加入

还未添加个人简介

评论

发布
暂无评论
[架构实战营] 模块七作业