写点什么

模块七作业

用户头像
seawolflin
关注
发布于: 1 小时前

题目

答案

业务分级

商城的业务可以分为充值、下单、支付、商品展示、已购买的商品

异地多活需要保障的业务:下单、支付

因为王者荣耀商城的商品都是虚拟商品没有库存和物流的概念,因此业务中没有涉及到库存和物流相关的业务

数据分类

  • 下单

用户 ID:全局唯一,不可变

订单 ID:全局唯一,不可变

商品 ID:全局唯一,不可变

  • 支付

用户 ID:全局唯一,不可变

订单 ID:全局唯一,不可变

点券余额:全局强一致性

数据同步

  • 下单

用户 ID:采用数据库同步+消息队列同步

订单 ID:采用数据库同步+消息队列同步

商品 ID:没有库存概念,每个区域存储一份商品信息

  • 支付

用户 ID:采用数据库同步+消息队列同步

订单 ID:采用数据库同步+消息队列同步

点券余额:采用数据库同步余额,充值只能在归属地充值

异常处理

  • 下单

  1. 获取商品信息失败,如何购买?

不需要处理,等恢复后再提供购买

  1. 已经在一个区域下单过了,同步订单 ID 失败

允许重复下单,对于英雄和皮肤只能买一个的,可以合并经验值

  • 支付

  1. 区域故障导致点券已扣款,但订单支付失败

故障恢复后退回点券


用户头像

seawolflin

关注

还未添加个人签名 2018.01.04 加入

还未添加个人简介

评论

发布
暂无评论
模块七作业