王者荣耀商城异地多活架构设计
设计步骤 1 - 业务分级
如下业务中,异地多活应该保证哪个或者哪几个核心业务?
注册、登录、对战、商城、社区、活动。
【答案】 登录、对战、商城,此处只选商城。
设计步骤 2 - 数据分类
【商城】
1. 依赖 QQ 和微信账号授权登录,本身无需登录信息;
2. 微信和 QQ 授权登录会返回给王者荣耀全局唯一 RoleID;
3. 商城需记录 RoleID 购买的点券数额,购买记录。
4. 商城需记录 RoleID 购买的英雄和皮肤,用于防止再次购买。
5. 商城需记录 RoleID 购买鲜花、改名卡之类的道具记录。
设计步骤 3 - 数据同步
【商城】
1. RoleID:同登录;
2. 购买的英雄和皮肤,全局唯一,不能修改,数据库同步即可。
3. 购买鲜花、改名卡之类的道具记录,不能修改,数据库同步即可。
设计步骤 4 - 异常处理
【商城】
1. 微信和 QQ 挂了怎么办?
直接挂公告:系统停服维护。
2. 用户对战数据未及时同步到异地机房,用户看不到购买记录怎么办?
等恢复了再看。
评论