# seckill
**Repository Path**: wink_miku/seckill
## Basic Information
- **Project Name**: seckill
- **Description**: 商城秒杀模块实现
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-07-27
- **Last Updated**: 2024-07-27
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
项目介绍
1. 项目名称:在线购物商城秒杀模块
2. 项目的功能: 用户管理模块(注册,登录,管理)
商品管理模块 订单模块 秒杀处理模块
3. 技术栈: 前端 Thymeleaf Bootstrap Jquery AJAX
后台:SpringBoot MyBaitsPlus Lombok
中间件 :RabbitMQ redis
数据库:mysql
4. 职责:后台代码的开发 、高并发测试、优化
5. 项目目标: 练习高并发做的项目
遇到困难
项目刚开始的时候,是直接连数据库,用jmeter做压力测试的时候,发现吞吐量非常低,并且有超卖问题。
解决:
1. 解决超卖问题--通过对秒杀订单表添加约束,对订单使用事务,防止超卖,并用限制库存不能为负数
2. 启动的时候,将库存放入redis中,购买时,在redis中预减库存,将订单通过RabbitMQ发动到消费端,进行对数据库的处理,生产端直接返回客户端。这样客户端速度就会非常快,然后通过结果查询,查看订单是否创建成功。