模块七作业
题目
答案
业务分级
商城的业务可以分为充值、下单、支付、商品展示、已购买的商品
异地多活需要保障的业务:下单、支付
因为王者荣耀商城的商品都是虚拟商品没有库存和物流的概念,因此业务中没有涉及到库存和物流相关的业务
数据分类
下单
用户 ID:全局唯一,不可变
订单 ID:全局唯一,不可变
商品 ID:全局唯一,不可变
支付
用户 ID:全局唯一,不可变
订单 ID:全局唯一,不可变
点券余额:全局强一致性
数据同步
下单
用户 ID:采用数据库同步+消息队列同步
订单 ID:采用数据库同步+消息队列同步
商品 ID:没有库存概念,每个区域存储一份商品信息
支付
用户 ID:采用数据库同步+消息队列同步
订单 ID:采用数据库同步+消息队列同步
点券余额:采用数据库同步余额,充值只能在归属地充值
异常处理
下单
获取商品信息失败,如何购买?
不需要处理,等恢复后再提供购买
已经在一个区域下单过了,同步订单 ID 失败
允许重复下单,对于英雄和皮肤只能买一个的,可以合并经验值
支付
区域故障导致点券已扣款,但订单支付失败
故障恢复后退回点券
评论