写点什么

模块七

作者:撿破爛ぃ
  • 2022 年 2 月 16 日
  • 本文字数:802 字

    阅读完需:约 3 分钟

一、业务分级

 登录、商城、充值、支付、订单。

对王者荣耀商城异地多活架构

 

二、数据分类

【登录】

1、依赖 QQ 和微信账号授权登录,本身无需登录信息;

2、微信和 QQ 授权登录会返回给王者荣耀全局唯一 RoleID;

3、王者荣耀只需要记录 RoleID 对应的区服信息,区服数据只会新增不会修改。

【商城】

1、商品信息,包括商品类型(英雄、皮肤、道具等)、价格、商品详情、销量、评价等

2、商品 ID:英雄 ID、皮肤 ID、道具 ID 等具有全局唯一性

3、虚拟物品没有库存,没有物流信息,支付成功即可获取虚拟物品

【充值】

依赖微信钱包或者 QQ 钱包充值点券,王者本身不需要记录点券充值明细(由微信钱包或 QQ 钱包记录),需要记录充值订单 ID,RoleID,点券数量对应的区服信息

【支付】

点券余额和 RoleID 绑定,根据充值和购买商品而变化,数据不可丢失

【订单】

订单 ID,全局唯一,只能新增,不可丢失

 

三、数据同步

【登录】

RoleID 和区服对应关系,只会新建不会修改,数据库同步即可。

【商城】

1、商品信息,采用数据库同步即可

2、商品 ID,全局唯一性,采用数据库同步即可

3、虚拟物品,采用数据库同步即可

【充值】

微信钱包或 QQ 钱包充值点券订单 ID 和 RoleID、区服对应关系,只会新建不会修改,采用数据库同步即可

【支付】

点券余额和 RoleID 绑定,采用数据库同步余额,

【订单】

订单 ID,全局唯一性,采用数据库同步

 

四、异常处理

1、充值过程中微信钱包和 QQ 钱包挂了怎么办?

直接挂公告:系统停服维护,等微信钱包和 QQ 钱包恢复后就可以正常充值了。

2、用户购买道具过程中系统挂掉怎么办?人工订正数据,达到最终一致性,礼包、优惠券等补偿。

3、用户在某个区服充值了点券,没同步到异地机房,购买不了商品怎么办?

等系统恢复就可以购买了。

4、用户在商城购买的商品未及时同步至异地机房,用户无法使用商品怎么办?

等恢复后再处理。

5、用户在商城的订单数据未及时同步至异地机房,用户看不到订单详情怎么办?

等恢复后再处理。

 

五、异地多活架构图


用户头像

撿破爛ぃ

关注

还未添加个人签名 2018.04.20 加入

还未添加个人简介

评论

发布
暂无评论
模块七