柔性降级方案-深圳抢红包的服务器一些软件规则略谈

系统到处存在发生异常的可能,需要对所有的环节做好应对的预案。下面列举微信红包对系统异常的主要降级考虑。

深圳抢红包服务器

1、 下单cache故障降级DB

下单cache有两个作用,生成红包订单与订单缓存。缓存故障情况下,降级为直接落地DB,并使用id生成器独立生成订单号。

2、 抢时cache故障降级DB

抢红包时,查询cache,拦截红包已经抢完、用户已经抢过、红包已经过期等无效请求。当cache故障时,降级DB查询,同时打开DB限流保护开关,防止DB压力过大导致服务不可用。

另外,cache故障降级DB时,DB不存储用户头像、用户昵称等(上文提到的优化),此时一并降级为实时接口查询。查询失败,继续降级为展示默认头像与昵称。

3、 拆时资金入账多级柔性

拆红包时,DB记录拆红包单据,然后执行资金转账。单据需要实时落地,而资金转账,这里做了多个层级的柔性降级方案:

大额红包实时转账,小额红包入队列异步转账 所有红包进队列异步转账 实时流程不执行转账,事后凭单据批量入账。

总之,单据落地后,真实入账可实时、可异步,最终保证一致即可。

4、 用户列表降级

用户列表数据在微信红包系统中,属于非关键路径信息,属于可被降级部分。

首先,写入时通过MQ异步写,通过定时对账保证一致性。

其次,cache中只缓存两屏,用户查询超过两屏则查用户列表DB。在系统压力大的情况下,可以限制用户只查两屏。

调整后的系统经过了16年春节的实践检验,平稳地度过了除夕业务高峰,保障了红包用户的体验。

 

您可能还会对下面的文章感兴趣:

COPYRIGHT © 2010-2018 广东木准科技有限公司 All Rights Reserved.

粤ICP备2022104150号
客服中心 customer service center

联系我们咨询微信:18300003210(服务器/等保相关咨询联系微信二十四小时在线)

  • 服务器租用
  • 服务器托管
  • 机房大带宽
  • 等保测评
  • 网络安全运维

售后服务 (网维技术QQ:404634181 投诉电话:183-0000-3210)

工作时间: 周一至周五 9:30至17:30 周六13:30至17:30,其它日期按国家法定节假日休假,如果有不便之请敬请谅解! 售后技术支持:多部门7*24小时机制。

客户投诉留言

电话和QQ,以便我们为您提供优质服务! *为必填项