redis学习(017 实战:优化秒杀)

黑马程序员Redis入门到实战教程,深度透析redis底层原理+redis分布式锁+企业解决方案+黑马点评实战项目

总时长 42:48:00 共175P

此文章包含第69p-第p70的内容 包含实战篇23-24的内容



优化秒杀功能分析

在这里插入图片描述

秒杀业务流程

在这里插入图片描述
判断一人一单
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

开始测试

先准备1000个登录的用户
在这里插入图片描述
在这里插入图片描述

使用JMeter进行测试
在这里插入图片描述
在这里插入图片描述

这个tokens是一个变量 我们在这个文件里进行查找
在这里插入图片描述

测试结果
在这里插入图片描述

优化业务流程

优化前的业务流程

在这里插入图片描述

优化后的业务流程

在这里插入图片描述

优化步骤

在这里插入图片描述

在这里插入图片描述

不必担心消息丢失,这是消息队列考虑的问题了

开始优化秒杀功能

在这里插入图片描述

编写java代码

在这里插入图片描述

使用postman进行生成秒杀券
在这里插入图片描述

在这里插入图片描述

数据库里添加了库存信息
在这里插入图片描述
redis里也添加了
在这里插入图片描述

创建lua脚本

新建一个lua脚本
在这里插入图片描述

在这里插入图片描述

lua脚本的拼接使用的不是加号而是两个点…
在这里插入图片描述

判断set集合里是否存在某个元素 使用 SISMEMBER 命令

在这里插入图片描述
在这里插入图片描述
成功返回0
在这里插入图片描述

使用java执行lua脚本

这部分代码替换为刚才描写的lua脚本
在这里插入图片描述

在这里插入图片描述

这里的第二个参数是key集合 这里没有传输key集合 我们不能写null,需要生成一个集合Collections.emptyList
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
这里大家注意,最好集群启动,我们前面设置了轮询的方式,避免部分请求失败,页面加载不全

测试下单

在这里插入图片描述

重复一次 提示不能重复下单
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值