模块 7 作业
【作业内容】
王者荣耀商城异地多活架构设计
【背景】
假设现在决定要实现王者荣耀里面的商城的异地多活架构,请你分析设计一下
王者荣耀商城异地多活架构设计
一、商城业务功能和特点分析
模块:
商品模块、订单模块、充值/支付模块、积分模块、账户模块
特点:
商城中的商品都是虚拟的商品,没有库存的限制,也不需要物流信息;
商城的账户体系依赖于王者荣耀游戏本身,两者的账户体系是同一套,因此商城不需要在做账户登录等功能;
二、异地多活架构设计
2.1 业务分级
从上面分析出来的商城功能模块中核心的业务功能是:订单模块、充值/支付模块
2.2 数据分类
用户 ID:全局唯一,不会修改
订单 ID:全局唯一,不会修改
充值/支付 ID:全局唯一,不会修改
账户余额(点券):高频修改的数据
2.3 数据同步
订单数据:采用数据库同步
充值、支付数据:采用数据库同步
账户余额数据(点券):采用数据库同步
商品信息:数据库+消息队列同步
2.4 异常处理
充值问题:
充值渠道不可用,无法充值
等待恢复,公告提示
点券充值没有同步异地机房
等待同步完成
商品问题:
够买的商品没有同步到异步机房
等待同步完成
重复够买问题
可以退款流程
三、王者荣耀商城异地多活架构示意图
版权声明: 本文为 InfoQ 作者【miliving】的原创文章。
原文链接:【http://xie.infoq.cn/article/56a74fd08d6e5fd94bb5e91cf】。文章转载请联系作者。
评论