王者荣耀商城异地多活架构设计
业务分析
王者荣耀商城的商品不存在库存的概念,无需物流;
部分商品(英雄和皮肤)一个账户只能买一个,不能重复购买,下单之前先判断购买权限;
支付只能用户点券支付;
设计步骤
一、业务分级
1、充值点券
2、购买限制数量商品
3、购买不限数量商品
二、数据分类
1、点券余额:用户账户点券余额
2、已购买商品数量:分为限制数量商品和不限制数量商品
三、数据同步
点券余额:需要强一致性,采用数据库加数据库同步
已购买商品数量:支付成功后更新购买商品数量,对于限制数量商品要做到强一致,采用数据库同步;对于非限制数量商品,做到最终一致即可;
四、异常处理
1、购买数量未同步,用户重复购买,人工修复。
2、充值未及时到账,等数据恢复。
3、用户购买数据未同步到异地机房,用户看不到,等数据恢复。
评论