毕业设计
业务场景分析:
1.活动预热
2.登陆
3.商品库存
4.商品详情
5.支付
性能估算
1.活动预热页面
一般通过各种活动宣传,吸引新用户,假设正常的日活为 100W,日活用户都会点击查看,日点击量为 100W,假设流量集中在早晚 6 个小时内,则 100W/(3600*6)=46QPS
2.登陆
由于渠道主要是 APP 和小程序,一般用户都会提前登陆,且 session 过期时间一般不会太短,且通过预热活动吸引长期不登陆的用户提前登陆,假设秒杀活动中有 %1 的用户需要重新登陆,100W1% /(36006)= 1 QPS
3.商品库存 &商品详情
秒杀活动中:假设秒杀活动中有 50%的用户有兴趣参加,且有兴趣的用户中有 20%的用户实际参加则 100W*50%*20%=10w 用户进入秒杀活动,假设正常用户 1 秒刷新一次库存,则 QPS 为 10W
秒杀活动前:整体流量应该小于秒杀活动中
4.支付
假设有 10 个品类,每个品类 20 个商品,秒杀活动带来的用户转化率为 %10,则在秒杀活动中,会有约 1W 成交,假设支付平均分布在秒杀活动 30 分钟内,则 1W/(30*60)= 53TPS
架构设计
存储架构设计
商品详情 &库存和支付系统使用主备模式数据库即可
缓存使用 redis sentinel 实现主备模式
计算架构设计
预计最高流量 10wqps,通过两台 lvs 负载均衡和 nginx 可
异常处理:
机房故障:由于当前只有一个机房,如果机房故障后端服务不可用,app 端要做好兜底页面准备。
秒杀过程中 redis 发生宕机切换,会出现库存超出限制的情况,需要做好相关监控
版权声明: 本文为 InfoQ 作者【4anonymous】的原创文章。
原文链接:【http://xie.infoq.cn/article/b605a85ad06957dd137ef488a】。未经作者许可,禁止转载。
评论