乐趣区

关于java:新蜂商城增强版来了完善秒杀功能添加秒杀单超期未支付任务支持万人秒杀

本我的项目是在 newbee-mall 我的项目的根底上革新而来, 将 orm 层由 mybatis 替换为 mybatis-plus,增加了秒杀性能、优惠劵性能以及后盾搜寻性能,喜爱的话麻烦给我个 star

简介

自己之前始终是在传统公司下班,接触的都是政企我的项目,公司各零碎业务繁多数据库表设计简单,多是业务逻辑宏大应用技术也都不算新,算是 j2ee 时代的遗留产物,鉴于当初 springboot、微服务、中间件等等风生水起,又因自己对商城零碎情有独钟,因而打算先用 springboot 搭建一个商城零碎,刚好发现了 newbee-mall 我的项目,就在此我的项目的根底上增加了一些本人没有接触过的新性能,一起提高。

系统升级

本次降级次要在原有秒杀性能的根底上进行了欠缺,秒杀优化如下:

  1. 秒杀页面动态化
  2. 增加了秒杀接口限流,基于 springAOP 实现
  3. 增加了秒杀接口避免反复提交,基于 spring 拦截器实现
  4. 应用 redis-set 数据结构判断用户是否买过秒杀商品
  5. 应用 redis 配合 lua 脚本进行原子自减,判断商品缓存库存是否大于 0
  6. 获取商品缓存,判断秒杀商品是否再有效期内
  7. 执行执行存储过程(减库存 + 记录购买行为)
  8. 应用 redis-set 数据结构记录购买过的用户
  9. 返回用户秒杀胜利 VO
  10. 下单后启用秒杀订单 5 分钟未领取超期工作
  11. 订单 5 分钟内为领取则主动勾销订单并回退库存

源码

github

在线地址:newebee-mall

分类管理 会员治理
优惠劵治理 商品治理
秒杀治理 订单治理

秒杀专区

秒杀专区为用户展现了后盾设置的秒杀商品,在秒杀有效期内能够进行商品秒杀操作. 后盾应用了贮存过程进步秒杀操作的 tps




优惠劵支付

优惠劵页面为用户展现了后盾设置的可用优惠劵,在下单时能够应用优惠卷缩小下单金额


商城 15 天交易额统计

商城 15 天交易额统计能够为商城经营人员展现商城近期总交易金额

感激 newbee-mall 我的项目原作者十三提供的根底我的项目反对

参考资料

秒杀架构模型设计
Java 高并发秒杀 API(慕课网)
⭐⭐⭐⭐秒杀零碎设计与实现. 互联网工程师进阶与剖析????????

newbee-mall plus 系列文章

1、newbee-mall plus 简介
退出移动版