随笔分类 -  Redis

摘要:#### 缓存设计 1.缓存穿透 > 查询一个根本不存在的数据,缓存层没有,每次都要到存储层区查询,失去了缓存保护后端存储的意义 - 解决方案: 缓存空对象并设置超时时间 2. 缓存失效>一大批缓存同一时间失效导致大量请求穿透缓存直达数据库,造成数据库压力过大甚至挂掉 - 解决方案: 将一次缓存过期 阅读全文
posted @ 2020-08-04 23:24 JaminYe 阅读(458) 评论(0) 推荐(0) 编辑
摘要:部署在一个tomcat下 模拟一个减库存的代码 这段代码请求少的话是没有问题的,但是在高并发的场景下就会出现问题 @RequestMapping("redisTest") public String redisTest() { String key = "count"; //获取库存数量 int c 阅读全文
posted @ 2020-08-02 10:58 JaminYe 阅读(160) 评论(0) 推荐(0) 编辑
摘要:单机连接 pom文件 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency> java代码 // 连接池配置文件 Jedis 阅读全文
posted @ 2020-08-01 13:31 JaminYe 阅读(268) 评论(0) 推荐(0) 编辑
摘要:redis集群与哨兵选举原理 Redis集群 redis Cluster将所有数据分为16384个槽位,每个节点负责一部分,当客户端要查找某个key时,根据本地槽位分配信息进行定位 槽位定位算法 Cluster会对key进行crc16算法得到一个整数值,再对这个整数值进行16384取模得到具体槽位 阅读全文
posted @ 2020-07-30 23:15 JaminYe 阅读(3273) 评论(2) 推荐(1) 编辑
摘要:Redis各架构安装与服务端使用 单机 主从架构 哨兵架构 集群 单机安装 确保本机已安装wget和gcc,如未安装执行yum install gcc wget -y 下载redis.tar.gz 本次使用的redis版本为5.08wget http://download.redis.io/rele 阅读全文
posted @ 2020-07-29 23:50 JaminYe 阅读(156) 评论(0) 推荐(0) 编辑
摘要:数据类型 String 单值缓存 set user:1 json数据 多值缓存 mset user:1:name zhangsan user:1:age 18 分布式锁 setnx key value 返回0或1 防止其他人修改 删除数据 del key value 计数器 incr article 阅读全文
posted @ 2020-07-27 23:03 JaminYe 阅读(113) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示