写点什么

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

作者:家有两宝
  • 2023-07-13
    四川
  • 本文字数:629 字

    阅读完需:约 2 分钟

1、业务分级

这里由于是王者荣耀的指定业务做异地多活设计,所以不需要单独处理了,直接是商城业务做异地多活。

2、数据分类

【产品】

产品 id 全局唯一,算法生成,不可变

详情,可变,可丢失

数量,可变,不可丢失,全局强一致

【支付】

订单 id 全局唯一,算法生成,不可变

余额,可变,全局强一致性。

3、数据同步

【产品】

产品 id:全局唯一,不可变,算法生成,直接重新生成

详情,可变,可丢失,数据库同步

数量,可变,全局强一致性,数据库同步,每个机房都有数量。

【支付】

订单 id 全局唯一,算法生成,不可变,直接重新生成

余额,可变,全局强一致性,数据库同步。只能在归属地充值等。如果在新机房时就允许使用 100 块的金额,如果

4、多活逻辑

【产品业务】

A、多活切换逻辑

直接新机房读取数据,限制数量为 1 的,只有在原机房恢复后进行校验,如果买多了,就把金额退回用户,道具收回。

B、多活切回逻辑

直接切回

C、异常处理

直接重新查看下单即可

【支付】

A、多活切换逻辑

金额可透支 100 元

B、多活切回逻辑

切回后,验证余额是否充足,如果不充足就提醒或者定时退款。

C、异常处理

退回金额及修改订单状态,然后重新下单即可。

架构图:


用户头像

家有两宝

关注

还未添加个人签名 2023-05-15 加入

还未添加个人简介

评论

发布
暂无评论
模块七:王者荣耀商城异地多活设计_架构训练营_家有两宝_InfoQ写作社区