架构实战营 - 模块七作业
架构实战营 - 模块七作业
学习总结
作业 王者荣耀商城异地多活架构设计
背景
假设现在决定要实现王者荣耀里面的商城的异地多活架构, 请你分析设计一下
作业要求
1. 分析王者荣耀商城的业务特点, 设计其异地多活架构
2. 按照模块7第5课的方法来设计异地多活架构
提示
1. 王者荣耀的商城是虚拟物品, 和淘宝这种实物电商有很大的区别, 注意识别出来
2. 用户要先调用微信钱包或者QQ钱包充值点券, 然后在商城里面用点券支付
3. 用户买英雄和皮肤的时候 同样的英雄和皮肤只能买一个, 不能重复购买
4. 用户买鲜花 改名卡之类的道具可以买多个
5. 分析步骤参考模块7第6课的案例
虚拟商品商城业务特点分析
虚拟商品不受库存和物流影响, 重要的是在确定用户支付后, 及时使客户体验商品功能
商品分为两类, 一类是一个用户仅能购买一个的商品, 比如英雄和皮肤, 另一类是改名卡那种, 可以购买多次的商品.
业务架构如下

异地多活架构
用户充值可以借助支付网管流水号实现异地多活, 在支付网管服务正常的情况下, 其他数据中心可以根据支付流水号为当前用户累加点券余额
商品需要拆分为两类。
用户唯一商品, 订单信息包含用户标识和商品标识, 每次用户消费点券, 购买商品, 及时同步要其他数据中心, 分钟级核对当前数据中心消费流水。
用户累计购买的商品, 订单需要包含用户标识、商品标识、购买前点券余额、购买后点券余额,只有当购买前点券余额与订单中一致时,才能购买成功。购买后及时同步到其他数据中心,并在分钟级批量任务核对数据中心流水。
