写点什么

模块九作业

用户头像
Mr.He
关注
发布于: 刚刚

1. 存储架构

1.1 存储性能估算

  • 注册:日活 100 万,占总用户数量的 30%, 故有 300 万用户数据。

  • 登录:日活 100 万,登录 QPS 为 100w/d

  • 商品数据:10 个品类,每类 20 个商品。故有 200 个商品信息数据。

  • 订单数据:日活 100 万,30%的用户下单,故每天 30 万订单数据。


1.2 存储架构设计图



2. 计算架构

2.1 计算性能估算

  • 用户登录:日活 100 万,秒杀当天预计有 80%的用户参与,假设都在秒杀开始前的 5 分钟内登录,故用户登录 QPS = 2.6k/s;

  • 订单数据:实际参与秒杀的商品共计 1012 件,不能超卖,预计在 1 秒内卖完。通过消息队列限流等等措施防止超卖,故有效的订单 TPS = 1012/s;

  • 商品查询:秒杀系统要时刻查询出剩余商品数量,故查询峰值在秒杀开启时,1 秒中要给用户反馈出剩余量。故 QPS = 80w/s。


2.2 计算架构

QPS 峰值已超过 80 万每秒,故需要采用三级负载均衡。秒杀系统的流量虽然很高,但是实际有效流量是十分有限的。利用系统的层次结构,在每个阶段提前校验,拦截无效流量,可以减少大量无效的流量涌入数据库。

2.3 计算架构之缓存架构

缓存架构应对超高的商品 QPS,可以有效缓解服务器压力。


3. 可扩展架构

由于秒杀服务的特殊性,故要将秒杀服务作为独立的微服务拆分出来。

4. 高可用架构

由于用户规模已达百万级,对容灾处理需要考虑进来。虽然条件是单机房,但是还是建议老板考虑同城双中心(灾备)模式。

5. 大数据架构

考虑到今后的发展,为推荐系统和机器学习做铺垫,同时也兼顾成本,可以采用 ClickHouse 平台。

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

Mr.He

关注

还未添加个人签名 2018.04.27 加入

还未添加个人简介

评论

发布
暂无评论
模块九作业