写点什么

王者荣耀商城异地多活设计

作者:kylexy_0817
  • 2023-09-16
    广东
  • 本文字数:481 字

    阅读完需:约 2 分钟

业务分级

业务功能

商品列表、充值点券、通过点券购买商品

业务特点

  • 点券需要用户调用微信或 QQ 钱包充值

  • 点券购买后不能提现

  • 同样的英雄和皮肤只能买 1 个

  • 鲜花、改名卡这类的道具可以买多个

  • 商品都是虚拟物品,不需要考虑库存、物流、退货退款等问题

异地多活选择的业务

  1. 商品列表

  2. 点券数据

  3. 消费流水数据

  4. 英雄和皮肤数据

  5. 鲜花、改名卡等道具数据

数据分类

  • 商品列表全局只有一份,商品 ID 也是唯一。商品 ID 由人工给定

  • 点券数据,消费流水与用户唯一 ID 绑定

  • 英雄和皮肤,鲜花、改名卡等道具与用户唯一 ID 绑定

数据同步

  • 商品列表所有机房同步一份

  • 与用户 ID 绑定的相关业务数据也同步一份

异常处理

  • 假如商品列表没有同步全,甚至一个都没同步到,由人工直接录入或导入到可用的机房【商品 ID 由人工给定是前提】

  • 由于微信或 QQ 支付已实现了高可用,所以点券充值的异常不作考虑

  • 点券数据用消息队列同步,假如同步出现问题,则通过允许一定程度的透支,记录消费流水,待数据同步恢复后,合并消费流水,再通过流水进行计算

  • 英雄、皮肤数据同步失败后,允许用户再次购买,恢复后合并英雄熟练度和经验值

  • 鲜花、改名卡等可重复购买的道具,在数据同步恢复后,合并数量即可

异地多活架构图

发布于: 刚刚阅读数: 2
用户头像

kylexy_0817

关注

想当将军的兵 2018-03-17 加入

15年码龄,金融、互联网、客运、通讯行业都干过

评论

发布
暂无评论
王者荣耀商城异地多活设计_架构师训练营_kylexy_0817_InfoQ写作社区