第七周作业
设计步骤 1 - 业务分级
如下业务中,异地多活应该保证哪个或者哪几个核心业务?
充值点券、商品展示、点券支付
【答案】商品展示、点券支付
【相关问题】
1. 无法充值点券怎么办?可以用账号里面现有的点券支付
2. 和实体商品对比,虚拟商品没有库存限制,同时也不用物流和发货。
设计步骤 2 - 数据分类
【商品展示】
商品信息:包括价格,一旦发布一般不会随意改动。
【点券支付】
订单 id:全局唯一,不可重复,每次算法生成。
点券余额:全局强一致性。
已购商品:全局强一致性。
设计步骤 3 - 数据同步
【商品展示】
商品信息:采用数据库同步 + 消息队列同步;
【点券支付】
订单 id:全局唯一,不可重复,每次创建的时候用算法生成,采用数据库同步 + 消息队列同步。
点券余额:全局一致性,采用数据库同步余额。
已购商品:全局一致性,采用数据库同步余额。
设计步骤 4 - 异常处理
1、订单 id 未同步成功,重新发起下单即可。
评论