淘东电商项目(77) -秒杀系统(小结)

简介: 淘东电商项目(77) -秒杀系统(小结)

引言

本文代码已提交至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/taodong-shop

秒杀系统的代码在前面博客已经实现了,有兴趣的同学可以参阅下:

本文目录结构:

l____引言

l____ 1.小结

1.小结

下面贴上我自己整理的原理图,如下:

前端:
  1. 使用动静分离、将静态资源存放到第三方文件服务器中实现cdn加速,目的减轻秒杀抢购带宽。
  2. 当用户点击秒杀按钮的时候,应该将按钮disabled(禁止),防止重复提交。
  3. 使用复杂的图形验证码防止机器模拟。
  4. 秒杀详情页面,使用定时器根据用户信息查询秒杀结果。
  5. 商品的详情页面使用nginx+lua+openresty 实现静态化页面。
网关:
  1. Ratelimter、Nginx、Hystrix、Redis实现限流( 令牌桶+漏桶算法) , 对用户秒杀请求实现限流和服务保护。
  2. 用户黑名单和白名单拦截。
秒杀接口:
  1. 服务降级级、隔离、熔断。
  2. 从redis中获取秒杀的令牌(能够获取到令牌就能够秒杀成功,否则就秒杀失败!)。
  3. 异步使用MQ执行修改库存操作。
  4. 提供一个根据用户信息查询秒杀结果接口。
项目部署点:
  1. Nginx+lvs 实现服务高可用和集群
  2. docker扩容
其他点:
  1. 分时段抢购

具体例子:现在有100个商品同时秒杀抢购,每个商品库存为100个? 基于mq+库存令牌桶 100*100=10000, 数据库执行修改库存操作压力还是非常大?



最靠谱的访问,可仿照12306分时段秒杀(中午、下午) 。

目录
相关文章
|
6月前
|
数据挖掘 黑灰产治理
排队免单商城系统开发详细案例/方案项目/源码指南
排队免单商城系统开发设计是指开发一种商城系统,其中用户可以通过排队活动获得商品免单的机会。
|
缓存 前端开发 安全
淘东电商项目(73) -秒杀系统(前端优化)
淘东电商项目(73) -秒杀系统(前端优化)
129 0
|
开发者
淘东电商项目(52) -聚合支付开篇
淘东电商项目(52) -聚合支付开篇
60 0
|
数据库
淘东电商项目(54) -银联支付案例(同步与异步)
淘东电商项目(54) -银联支付案例(同步与异步)
106 0
|
SQL 前端开发 Java
淘东电商项目(74) -秒杀系统(库存超卖解决方案)
淘东电商项目(74) -秒杀系统(库存超卖解决方案)
152 0
|
设计模式 算法 安全
淘东电商项目(78) -秒杀系统(服务保护)
淘东电商项目(78) -秒杀系统(服务保护)
68 0
|
消息中间件 NoSQL 前端开发
淘东电商项目(76) -秒杀系统(完整代码实现)
淘东电商项目(76) -秒杀系统(完整代码实现)
99 0
|
数据库
淘东电商项目(56) -支付系统分布式事务的解决方案
淘东电商项目(56) -支付系统分布式事务的解决方案
88 0
|
前端开发 Java 应用服务中间件
淘东电商项目(53) -银联支付案例源码分析
淘东电商项目(53) -银联支付案例源码分析
79 0
|
设计模式 Java Maven
淘东电商项目(60) -聚合支付(集成支付宝)
淘东电商项目(60) -聚合支付(集成支付宝)
71 0