写点什么

模块 7 作业 王者荣耀线上商城异地多活架构设计

作者:sandywrh
  • 2023-08-04
    上海
  • 本文字数:487 字

    阅读完需:约 2 分钟

  1. 业务分级

假设商城业务的重要性突显,需要考虑异地多活架构


  1. 数据分类

王者荣耀的商城是虚拟物品商城:

1)商城的主要货币是点券

点券购买:用户要先调用微信钱包或者 QQ 钱包充值点券,相当于用户在商城的余额。

点券使用:商城里的商品用点券支付

 

一个区域的存储作为点券的主存储服务器,另一个区域只是备份,不可修改。简化余额管理的复杂度。

 

2)用户买英雄和皮肤的时候同样的英雄和皮肤只能买 1 个,不能重复购买。每个 roleId 只能绑定一个英雄或者特定的皮肤

购买英雄和皮肤的记录,只能新增,不能修改,需要做查重处理。

数据库同步。可以做主备切换。

 

3)用户买鲜花、改名卡之类的道具可以买多个

购买鲜花,改名卡之类的道具记录,只能新增,不能修改,无法做查重。

数据库同步。可以做主备切换。


  1. 异常处理

1)点券存储区服挂,等修复。

2)购买英雄皮肤,切换到异地机房,可以购买。之后再将数据同步到恢复后的机房。

3)购买鲜花等,切换到异地机房,可以购买。之后再将数据同步到恢复后的机房。

4)如果购买的英雄皮肤记录,未及时同步到异地机房,无法查重,导致重复购买。可以容忍。恢复后退回用户点券,及退回到上次的购买内容。


异地多活架构示意图:


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

sandywrh

关注

还未添加个人签名 2017-12-12 加入

还未添加个人简介

评论

发布
暂无评论
模块7作业 王者荣耀线上商城异地多活架构设计_sandywrh_InfoQ写作社区