首页 > 其他 > 详细

折扣商品限时秒杀抢购系统

时间:2020-08-01 14:30:58      阅读:104      评论:0      收藏:0      [点我收藏+]
  • 秒杀系统基于Spring Boot搭建,针对多人秒杀抢购系统做了良好的优化。
  • 前端使用CDN缓存和限制重复秒杀减小对服务器的压力。
  • 后端使用Redis 进行缓存,减少对数据库请求的压力,使用RabbitMQ异步实现数据库更新。
  • 经过测试优化,系统的平均响应时间减少67%,吞吐量增加74%。
秒杀流程
技术分享图片

|

库存预减用的是哪个redis方法

  • decr 变量:变量减一。

  • incr 变量:变量加一。

如果项目中的redis服务挂掉,如何减轻数据库的压力

  • 集群+主从。
  • 熔断器降级,在redis取数据做一次熔断降级,报错直接走数据库。

如何避免消息队列的消费方重复消费消息

  • 数据库唯一约束实现幂等,字段使用Message的key做唯一索引。

消息的消费结果如何返回给消息发送方

  • 信道设置成confirm模式,

说一下你的秒杀系统设计,怎么解决超卖

  • 行锁,set stock=stock-1 where stock>0
  • 乐观锁
  • LUA脚本把判断库存扣减库存的操作都写在一起交给Redis去做

你说你用到了redis,redis有哪些数据结构,你为什么要用redis,哪里用到了,为什么说redis快,多路io复用详细原理可以说说嘛?

redis,深入讲一讲,并说一下它的应用场景

  • 缓存;限时业务,计数器;分布式锁;队列(push,pop)。

秒杀模块怎么设计的,如何压测,抗压手段,消息队列怎么用的

  • JMeter,消息队列异步修改库存。

秒杀系统服务器抗压思路,从哪些方面去优化

  • 服务单一职责:秒杀的业务逻辑放一起。

  • 前端:秒杀链接加盐加密,资源静态化,按钮控制。

  • Redis集群,Nginx负载均衡,库存预热。

  • 限流,降级,熔断,隔离。

  • 消息队列:削峰填谷。

秒杀项目,别说你里面的优化,你还有什么优化策略吗?

  • 多服务器负载均衡,把秒杀商品平均分给服务器。

秒杀系统的前端设计怎么做

  • 商品页面:用于所有秒杀商品的展示。

  • 秒杀页面:用于秒杀商品的展示和秒杀功能。

说说秒杀如何实现的

  • 用户请求发送到消息队列中,消息队列异步处理秒杀请求。

秒杀过程中怎么保证redis缓存和数据库的一致性

  • 先更新数据库,再更新缓存
  • 删除缓存,更新数据库
  • 更新数据库,删除缓存

秒杀接口防刷怎么做

  • 秒杀链接加盐。
  • URL动态化,通过MD5之类的加密算法加密随机的字符串去做url,然后通过前端代码获取url后台校验才能通过。

Redis和数据库数据不一致怎么办,以什么为准

  • 以数据库为准。

折扣商品限时秒杀抢购系统

原文:https://www.cnblogs.com/ash1523590342/p/13414221.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!