自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Java秒杀实战 (七)安全优化

一、隐藏秒杀地址思路:秒杀开始前,先去请求接口获取秒杀地址1.接口改造,带上PathVariable参数2.添加生成地址的接口3.秒杀收到请求,先验证PathVariable 二、数学公式验证码1.添加生产验证码接口2.在获取秒杀路径的时候,验证验证码3.ScriptEngine使用 package com.wings.seckill.controll...

2018-07-24 21:47:08 816

原创 Java秒杀实战 (六) 服务级高并发秒杀优化(RabbitMQ+接口优化)

一、思路:减少数据库访问1.系统初始化,把商品库存数量加载到Redis2.收到请求,Redis预减库存,库存不足,直接返回,否则进入33.请求入队,立即返回排队中4.请求出队,生成订单,减少库存5.客户端轮询,是否秒杀成功二、安装RabbitMQ及其相关依赖下载erlanghttps://www.erlang.org/downloads下载rabbitMQh...

2018-07-24 21:47:00 4011 1

原创 Java秒杀实战 (五) 页面级高并发秒杀优化(Redis缓存+静态化分离)

我们发现,目前系统最大的瓶颈就在数据库访问。因此,系统优化的方案核心在于减少数据库的访问,而缓存就是一个好方法。一、页面缓存以商品列表为例,Controller方法改造如下 @RequestMapping(value = "/to_list", produces = "text/html") @ResponseBody public String toList(HttpServl...

2018-07-24 21:46:50 5962

原创 Java秒杀实战 (四)JMeter压测

一、JMeter入门下载链接 http://jmeter.apache.org/download_jmeter.cgi添加线程组设置http请求默认值添加待压测的http请求添加聚合报告监听器启动测试1000个线程,循环10次,即10000个请求  二、redis 压测1. redis-benchmark -h 1...

2018-07-24 21:46:39 2020

原创 Java秒杀实战 (三)秒杀基本功能开发

一、数据库表商品表CREATE TABLE `goods` (`id` BIGINT ( 20 ) NOT NULL AUTO_INCREMENT COMMENT '商品ID',`goods_name` VARCHAR ( 16 ) DEFAULT NULL COMMENT '商品名称',`goods_title` VARCHAR ( 64 ) DEFAULT NULL COMME...

2018-07-24 21:46:29 1359 2

原创 Java秒杀实战 (二) 实现用户登录以及分布式session功能

一、两次MD51. 用户端: PASS = MD5( 明文 + 固定 Salt) 2. 服务端: PASS = MD5( 用户输入 + 随机 Salt)通过两次MD5,可以增大http明文传输过程或数据库被盗后,黑客通过彩虹表等手段反推出明文密码的难度(有一定作用,但不能保证绝对安全)。pom文件添加依赖 <dependency> <groupId&...

2018-07-24 21:46:22 2636

原创 Java秒杀实战 (一)环境搭建

1. SpringBoot环境搭建以前使用springMVC的时候,要引入一大堆xml等配置文件。引入SpringBoot的目的,就是为了简化web配置。pom依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-start...

2018-07-24 21:46:13 1180 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除