![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 80
liangshitian
java开发工程师
展开
-
Redis缓存穿透、缓存击穿、缓存雪崩
1、基本概念2、缓存穿透解决方案缓存空对象(代码接单,效果不好),导致大量的空对象数据 布隆过滤器(代码复杂,效果很好,一般使用这个) 原理 手写分布式的布隆过滤器①、比如根据用户ID查询用户的信息public RestResponse<User> getUserInfo(String userId) { //缓存空对象(代码接单,效果不好),导致大量的空对象数据 //先查询redis缓存 Object redisUser =原创 2021-02-22 18:00:53 · 271 阅读 · 0 评论 -
SpringBoot集成shiro+redis+jwt多realm实现登录(支持密码、免密校验、多用户表校验)
本篇文章主要介绍 Shiro多realm,根据不同的登录类型指定不同的 realm。由于项目上需要支持原有的sys_user系统用户做登录验证,又要加上现在需要做微信端sys_wx_user的用户验证。实现的思路就是需要前端在请求头里加一个loginType字段来区分当前登录使用那个realm去做认证。而且这个多realm还可以做密码和免密校验。1、目前需要两个Realm,第一个是默认的系统认证(DefaultUserRealm.java)这里和正常的shiro认证逻辑一致,主要是验证sys_us.原创 2020-09-11 14:02:38 · 3870 阅读 · 2 评论 -
如何保证库存在高并发的场景下是安全的
一、 问题一件商品只有100个库存,现在有1000或者更多的用户来购买,每个用户计划同时购买1个到几个不等商品。如何保证库存在高并发的场景下是安全的?(1)不多发(2)不少发二、 下单的步骤(1)下单(2)下单同时预占库存(3)支付(4)支付成功真正减扣库存(5)取消订单(6)回退预占库存三、 什么时候进行预占库存?...转载 2020-05-07 16:46:26 · 15455 阅读 · 0 评论 -
SpringBoot集成shiro+redis+jwt实现无状态授权验证
前言1.放弃Cookie,Session,使用JWT进行鉴权,完全实现无状态鉴权。2.JWT密钥支持过期时间;jwt作为创建验证token工具,并选择一种验证方式与算法。3.使用redis做缓存处理,缓存token等等登录信息,以实现单点登录与超时登录功能。4.密码加密(采用AES-128 + Base64的方式)。5.根据RefreshToken自动刷新AccessToken...原创 2020-01-03 11:04:35 · 33867 阅读 · 5 评论 -
SpringBoot +Redis +RabbitMQ 实现高并发限时秒杀
1.安装RabbitMQdocker安装:https://blog.csdn.net/qq_33612228/article/details/103732890windows安装:https://blog.csdn.net/m0_37034294/article/details/828394942.安装Redisdocker安装:https://blog.csdn.net/qq_3...原创 2019-12-30 16:16:01 · 14753 阅读 · 0 评论 -
SpringBoot整合Redis
目录前言 pom引入 RedisCacheConfig配置 RedisUtil 工具类 application.yml配置 用户详情查询测试项目目录结构前言关于Redis的解释网上有很多,可以自行查阅,Redis与SpringBoot整合有两种方式,第一种是使用Jedis,它是Redis官方推荐的面向Java的操作Redis的客户端,第二种是使用RedisTemp...原创 2019-12-25 16:19:46 · 11146 阅读 · 0 评论