王者荣耀商城异地多活架构设计
数据分类
•依赖 QQ 和微信账号授权登录,本身无需登录信息
•微信和 QQ 授权登录会返回给王者荣耀全局唯一 RoleID
•依赖微信钱包或者 QQ 钱包充值点券
•英雄和皮肤只能买 1 个,需要强一致性。
•鲜花、改名卡之类的道具可以买多个,需要强一致性。
数据同步
•英雄和皮肤只能买 1 个,需要强一致性,购买只能在归属地购买,采用数据库同步 + 消息队列同步。
•鲜花、改名卡之类的道具可以买多个,采用数据库同步余额,可在登录地购买,然后用事务合并。
异常处理
•网络故障或机房故障,导致用户无法在账号归属地购买英雄和皮肤,这是只能等待机房和网路回复正常。
•网络故障或机房故障,导致用户无法使用鲜花、改名卡之类的道具,这时可在登录地购买,最后事务合并到账号。
评论