写点什么

模块七课后作业

用户头像
NewBranSTONE
关注
发布于: 1 小时前
模块七课后作业

设计步骤 1 - 业务分级

王者荣耀商城里卖的都是虚拟的商品,遇见最多的情况就是限时出售,不存在剩余库存这一说法,对于并发量可能是某些特别火爆的活动,在一开始的时候会增加服务器压力,但后续会随着时间趋于稳定。关键是要让用户充值并且能正常换取点券,再用点券去消费。如果确实活动太火爆,用户需要等待一段时间才能在仓库收到购买的东西也是可以容忍的。

王者荣耀商城的业务核心

  1. 创建订单。

  2. 处理支付回调结果。

  3. 游戏里消费的是虚拟商品。


设计步骤 2 - 数据分类

【下单和支付】

  1. 系统需要创建购买订单。

  2. 需要等待微信、苹果商店支付回调。

  3. 需要处理支付的回调结果对订单状态做变更。


【消费】

  1. 根据支付结果,将游戏虚拟商品发放给玩家。

  2. 如果是同一个英雄或者同一个皮肤,下次就不能再次发起购买请求了。

  3. 如果是购买铭文或者是钻石鲜花改名卡之类可以购买多次。


设计步骤 3 - 数据同步

【下单】

  1. 针对英雄和皮肤这类只能购买一次的虚拟商品,采用订单全局唯一,不可变,采用数据同步 + 消息队列同步。

  2. 针对能够重复购买的,采用数据同步即可。


【支付】

处理支付回调结果,需要判断防止同一个订单处理多次回调。


【消费】

在处理支付回调的时候需要判断订单号,注意不要重复处理。


设计步骤 4 - 异常处理

  1. 可以采取一定客服补偿机制,比如说支付失败之后,客服赠送一定数量的优惠券。

  2. 如果是系统大规模宕机造成的问题,可以让系统发补偿礼物。


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


用户头像

NewBranSTONE

关注

还未添加个人签名 2017.10.27 加入

还未添加个人简介

评论

发布
暂无评论
模块七课后作业