写点什么

模块七作业:王者荣耀商城异地多活架构设计

用户头像
Felix
关注
发布于: 3 小时前

1)业务分级

王者荣耀商城业务包括:充值、下单、支付、使用道具

核心业务为下单、支付和使用道具。因为商城是使用点券支付的,只要有点券余额就能进行购买,所以对充值业务先不做异地多活。

2)数据分类

【下单】

商品数据:创建好商品后就不会修改,没有库存限制。

背包数据:对于英雄和皮肤类商品,是否可购买要根据用户背包情况来判断。

【支付】

点券余额:数据强一致性要求,且不可丢失。

【使用道具】

背包数据:支付成功后将商品发送到背包。只会新增不会修改。消耗类道具使用后数量相应减少。

3)数据同步

【下单】

商品数据不会频繁修改,数据库同步即可。

背包数据(英雄和皮肤等无数量类道具),数据只会新增,不会删除和修改,数据库同步即可。

【支付】

点券余额需要保证数据强一致要求,可用采用强一致性的分布式数据存储方案。

【使用道具】

背包数据(英雄和皮肤等无数量类道具),同下单业务。

背包数据(鲜花和改名卡有数量类道具),数据强一致性,可用使用强一致性分布式数据存储方案。

4)异常处理

【下单】

1. 用户背包数据(无数量类道具)查不到怎么办?

不可购买英雄和皮肤类商品。

【支付】

1. 点券余额不够,且不能充值怎么办?

等充值功能恢复后再购买。

【使用道具】

  1. 用户背包数据(有数量类道具)查不到怎么办?

道具不可用使用。

5)商城异地多活架构图


用户头像

Felix

关注

还未添加个人签名 2019.02.14 加入

还未添加个人简介

评论

发布
暂无评论
模块七作业:王者荣耀商城异地多活架构设计