__ _ ____
________ _____/ /__(_) / /
/ ___/ _ \/ ___/ //_/ / / /
(__ ) __/ /__/ ,< / / / /
/____/\___/\___/_/|_/_/_/_/
<br/>
## 高并发的瓶颈在数据库
##### 测试地址:http://47.93.242.254:8088/login/to_login<br>
###### 登录手机号:13000000000<br>
###### 密码:123456
##### 请先访问:http://47.93.242.254:8088/seckill/reset<br>
##### 如果响应为:
```
{
code: 0,
msg: "success",
data: true
}
```
##### 再进行登录。
<hr>
<br>
### 减少数据库访问
思路:<br>
1. 系统初始化,把商品库存数量加载到Redis<br>
2. 收到请求,Redis预减库存,库存不足,直接返回,否则进入3<br>
3. 请求入队,立即返回排队中<br>
4. 请求出队,生成订单,减少库存<br>
5. 客户端轮询,是否秒杀成功
<hr>
<br>
### 项目框架
1. Spring Boot环境搭建<br>
2. 集成Thymeleaf,Result结果封装<br>
3. 集成Mybatis+Druid<br>
4. 集成Jedis+Redis安装+通用缓存Key封装
### 页面优化技术
1. 页面缓存+URL缓存+对象缓存<br>
2. 页面静态化,前后端分离
### 接口优化
1. Redis预减库存减少数据库访问<br>
2. 内存标记减少Redis访问<br>
3. RabbitMQ队列缓冲,异步下单,增强用户体验
### 安全优化
#### 1.秒杀接口地址隐藏
秒杀开始之前,先去请求接口获取秒杀地址<br>
思路:<br>
(1) 接口改造,带上PathVariable参数<br>
(2) 添加生成地址的接口<br>
(3) 秒杀收到请求,先验证PathVariable<br>
#### 2.数学公式验证码
点击秒杀之后,先输入验证码,分散用户请求<br>
思路:<br>
(1) 添加生成验证码的接口<br>
(2) 在获取秒杀路径的时候,验证验证码<br>
(3) 使用ScriptEngine<br>
#### 3.接口防刷
对接口做限流<br>
思路:
* 用拦截器减少对业务侵入
<br>
##### ps:
##### 代码是跟着慕课网实战课程《Java秒杀系统方案优化 高性能高并发实战》一步一步写的,感觉有很大的收获,推荐小伙伴们也去学习一下。
##### 课程地址:[Java秒杀系统方案优化 高性能高并发实战](https://coding.imooc.com/class/168.html)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
毕业设计是高等教育阶段学生在完成学业前所进行的一项重要学术任务,旨在检验学生通过学习所获得的知识、技能以及对特定领域的深刻理解能力。这项任务通常要求学生运用所学专业知识,通过独立研究和创新,完成一个实际问题的解决方案或者开展一项有价值的项目。 首先,毕业设计的选择通常由学生根据个人兴趣、专业方向以及实际需求来确定。学生需要在导师的指导下明确研究目标、问题陈述,确立研究的范围和深度。毕业设计可以包括文献综述、需求分析、方案设计、实施与测试等多个阶段,以确保整个过程的科学性和系统性。 其次,毕业设计的完成通常需要学生具备一定的独立思考和解决问题的能力。在研究过程中,学生可能需要采用各种研究方法,如实验、调查、案例分析等,以获取必要的数据和信息。通过这些活动,学生能够培养扎实的专业技能,提升解决实际问题的实际能力。 第三,毕业设计的撰写是整个过程的重要组成部分。学生需要将研究过程、方法、结果以及结论等详细记录在毕业论文中,以展示其研究的全貌和成果。同时,撰写毕业设计还有助于提高学生的学术写作水平,培养清晰、逻辑的表达能力。 最后,毕业设计的评价通常由导师和相关专业人士进行。评价标准包括研究的创新性、实用性、方法的科学性以及论文的质量等方面。学生在毕业设计中获得的成绩也将直接影响其最终的学业成绩和学位授予。 总的来说,毕业设计是高等教育中的一项重要环节,通过此过程,学生不仅能够巩固所学知识,还能培养独立思考和解决问题的能力,为将来的职业发展奠定坚实的基础。
资源推荐
资源详情
资源评论
收起资源包目录
基于Spring Boot的高性能秒杀系统.zip (113个子文件)
bootstrap.css 143KB
bootstrap.min.css 118KB
bootstrap-theme.css 26KB
bootstrap-theme.min.css 23KB
layer.css 14KB
layer.css 5KB
glyphicons-halflings-regular.eot 20KB
loading-0.gif 6KB
loading-2.gif 2KB
loading-1.gif 701B
.gitignore 249B
goods_detail.htm 8KB
order_detail.htm 4KB
login.html 4KB
goods_detail.html 3KB
order_detail.html 2KB
goods_list.html 2KB
seckill_fail.html 246B
hello.html 184B
SeckillController.java 9KB
RedisService.java 6KB
GoodsController.java 6KB
SeckillService.java 5KB
SeckillUserService.java 4KB
UserUtil.java 4KB
SimpleController.java 4KB
AccessInterceptor.java 4KB
MQConfig.java 3KB
MQReceiver.java 2KB
LoginInterceptor.java 2KB
OrderService.java 2KB
CodeMsg.java 2KB
OrderController.java 2KB
MQSender.java 2KB
LoginController.java 1KB
GlobalExceptionHandler.java 1KB
OrderDao.java 1KB
SwaggerConfig.java 1KB
WebConfig.java 1KB
GoodsService.java 1KB
UserArgumentResolver.java 1KB
MD5Util.java 1KB
OrderInfo.java 1KB
GoodsDao.java 1KB
UserController.java 1KB
DBUtil.java 1012B
RedisPoolFactory.java 949B
IsMobileValidator.java 892B
SeckillUser.java 845B
Result.java 793B
Goods.java 762B
IsMobile.java 737B
UserService.java 702B
BasePrefix.java 656B
SeckillGoods.java 624B
ValidatorUtil.java 602B
CookieUtil.java 591B
LoginVO.java 578B
SeckillUserDao.java 566B
UserDao.java 520B
RedisConfig.java 492B
SeckillOrder.java 479B
SeckillApplication.java 469B
SeckillKey.java 447B
SeckillUserKey.java 439B
SeckillMessage.java 437B
GoodsKey.java 422B
AccessLimit.java 411B
AccessKey.java 404B
UserContext.java 395B
GlobalException.java 388B
NeedLogin.java 385B
User.java 332B
GoodsVO.java 318B
GoodsDetailVO.java 307B
UserKey.java 293B
OrderKey.java 256B
UUIDUtil.java 218B
OrderDetailVO.java 197B
KeyPrefix.java 162B
bg.jpg 3.62MB
bg2.jpg 80KB
jquery.min.js 82KB
bootstrap.js 68KB
bootstrap.min.js 36KB
layer.js 21KB
jquery.validate.min.js 21KB
additional-methods.min.js 17KB
md5.min.js 10KB
layer.js 3KB
common.js 1KB
messages_zh.min.js 1KB
npm.js 484B
LICENSE 11KB
bootstrap.min.css.map 529KB
bootstrap.css.map 380KB
bootstrap-theme.css.map 47KB
bootstrap-theme.min.css.map 25KB
README.md 2KB
iphone8.png 340KB
共 113 条
- 1
- 2
资源评论
JJJ69
- 粉丝: 6132
- 资源: 5674
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功