redis
catnoiofjz
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Redis_Redisson_Redlock
一,redis锁的普通实现 设置key(myKey)的值为myUuid(当前线程唯一标志值),NX代表key不存在才设置,PX代表30秒后过期 set myKey myUuid NX PX 30000 使用lua脚本执行,保证原子性,判断key对应的值是当前线程的myUuid才删除,避免由于当前线程阻塞超过30秒后再删除key时,误删了其他线程设置的key。 if redis.call('get...原创 2020-04-22 17:22:04 · 485 阅读 · 0 评论 -
redis数据持久化策略
1.rdb 将数据保存一个快照,存放在dump.rdb文件中 在redis.conf文件中可配置以下属性 rdbcompression yes 保存文件是否压缩,默认为yes rdbchecksum yes 保存文件是否进行rdb文件格式校验,默认为yes stop-writes-on-bgsave-error yes 保存文件时发生错误是否停止,默认为yes dbfilename dump....原创 2020-04-13 19:00:08 · 155 阅读 · 0 评论 -
redis内存淘汰策略
当redis使用的内存超过最大内存限制maxmemory时,会使用以下内存淘汰策略之一。 volatile-lru: 对设置了过期时间的数据,淘汰最近最少使用的。 volatile-ttl: 对设置了过期时间的数据,淘汰即将过期的。 volatile-random:对设置了过期时间的数据,随机淘汰。 volatile-lfu: 对设置了过期时间的数据,淘汰最少使用的。(新加策...原创 2020-04-10 23:17:05 · 199 阅读 · 0 评论 -
redis过期key删除策略
redis的key到了过期时间后,不会立刻被删除,会通过redis自身的删除策略来删除。 1.定时删除策略 在设置key过期时间的同时,创建一个定时器,等key到期了将其删除。 优点:快速删除,节省内存空间 缺点:当cpu高负载时,会给cpu添加额外的压力,同时导致redis服务器的处理效率有所下降 总结:以cpu性能换内存空间 2.惰性删除策略 数据过期后不进行处理,等下次访问该数据时判断...原创 2020-04-09 18:06:51 · 772 阅读 · 0 评论 -
redis缓存穿透,击穿和雪崩
缓存穿透 某个key在redis和db中都没有,如果大量去查,则会不停地查db,增加db的压力 解决方案 1.即使db中没有也可以缓存到redis,设置一个1-5分钟的过期时间即可 2.针对黑客攻击的情况,更换加密key,这样攻击的url请求就通过不了校验流程 缓存击穿 某个经常查询的key突然过期了,导致大量请求落到db 解决方案 1.设置超热key(已确定每天都有超大访问量的key)永不过...原创 2020-04-08 18:29:54 · 159 阅读 · 0 评论
分享