跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 本人开发的新蜂商城增强版,完善了秒杀功能,添加秒杀单超期未支付任务,支持万人秒杀
未分類
2021 年 2 月 5 日

本人开发的新蜂商城增强版,完善了秒杀功能,添加秒杀单超期未支付任务,支持万人秒杀

本人开发的新蜂商城增强版,完善了秒杀功能,添加秒杀单超期未支付任务,支持万人秒杀

資深大佬 : wayn111 9

本项目是在 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 (慕课网)
⭐⭐⭐⭐秒杀系统设计与实现.互联网工程师进阶与分析
大佬有話說 (24)

  • 資深大佬 : darksword21

    …….. 很好 很有精神

  • 主 資深大佬 : wayn111

    @darksword21 谢谢肯定

  • 資深大佬 : ArJun

    不错

  • 資深大佬 : wqgogogo

    挺厉害的,这个是真的能支付并抢到商品还是练习用的?

  • 資深大佬 : yRebelHero

    主优秀!向主学习!

  • 資深大佬 : huntcool001

    emm. 压测过吗?

  • 主 資深大佬 : wayn111

    @huntcool001 压测过,秒杀接口可以抗一万请求

  • 主 資深大佬 : wayn111

    @ArJun 谢谢

  • 主 資深大佬 : wayn111

    @wqgogogo 可以抢到,接入了支付宝沙箱支付,微信支付是写死的

  • 資深大佬 : muchan92

  • 主 資深大佬 : wayn111

    @wayn111 需要新注册用户,有用户限制

  • 主 資深大佬 : wayn111

    @muchan92 谢谢

  • 資深大佬 : fallinlovewith

    !!!!!!!

  • 資深大佬 : lpts007

    不错,喜欢

  • 主 資深大佬 : wayn111

    @yRebelHero 一起进步

  • 資深大佬 : wysnylc

    秒杀,指 redis lua 锁

  • 主 資深大佬 : wayn111

    @wysnylc

  • 資深大佬 : Leigg

    给了哈

  • 資深大佬 : wfd0807

    能解释一下为什么用 mybatis plus 吗?在我看来 mybatis plus 是一个不伦不类的东西,而且一堆 bug

  • 資深大佬 : iConnect

    移动版没做?

  • 資深大佬 : chenqh

    主真有毅力

  • 主 資深大佬 : wayn111

    @Leigg 谢谢

  • 資深大佬 : brezp

    赞一个,感觉看到了当年刚学习 java 的自己

  • 主 資深大佬 : wayn111

    @brezp 谢谢

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具