Skip to content

lahhass/miaosha_idea

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Boot高并发秒杀项目

开发工具

IDEA 2017.1.2

项目环境

JDK Spring Boot MySQL Redis RabbitMQ
1.8 1.5.9.RELEASE 5.7.26 5.0.4 3.7.15

项目亮点

  1. 实现了分布式Session,分布式的多台应用服务器都能响应请求
  2. 使用redis做各类缓存,减轻数据库压力,提高并发量和访问速度,秒杀时内存标记减少redis访问
  3. 页面静态化,将静态页面缓存在浏览器,提高页面加载速度,也减轻服务器压力
  4. 使用RabbitMQ消息队列异步下单,增强用户体验,流量削峰
  5. 安全优化: 秒杀接口地址隐藏、数学公式图形验证码(也是削峰重要手段)、 接口防刷限流

使用技术

  • 前端: Thymeleaf、Bootstrap、JQuery
  • 后端: SpringBoot、JSR303、MyBatis
  • 中间件: RabbitMQ、Redis、Druid

html+JQuery实现前后端分离,Thymeleaf是一个服务端模板,类似于JSP JSR303服务端验证框架,做服务端参数校验 RabbitMQ消息队列异步下单,Redis做相比MemoryCache有可持久化的优点,Druid连接池可以做监控,监控连接池的最大连接多少、最大并发多少、最长时间多少等。

运行说明

  1. 安装redis、mysql、rabbitmq等环境
  2. MySQL-Front/Navicat输入sql文件
  3. 到src/main/resources下的application.properties下修改相关redis、mysql、rabbitmq的地址、用户名、密码等信息
  4. 在数据库秒杀商品表里面设置合理的秒杀开始时间与结束时间
  5. 注册地址:http://localhost:8083/register/to_register
  6. 登录地址:http://localhost:8083/login/to_login
  7. 商品秒杀列表地址:http://localhost:8083/goods/to_list
  8. application.properties里可指定端口

运行演示

用户注册 用户注册

用户登录 用户登录

秒杀商品列表 秒杀商品列表

秒杀倒计时 秒杀倒计时

秒杀成功
秒杀成功

订单详情 订单详情

秒杀已结束 秒杀已结束

About

Spring Boot高并发秒杀项目

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published