
redis
蓝色心灵-海
我是一名软件架构师,从事过开发、运维、设计、前端等工作,有自己的项目。
展开
-
高并发下缓存失效问题(缓存穿透、缓存雪崩、缓存击穿)
一、缓存穿透1、描述指查询一个一定不存在的数据,由于缓存是不命中,将去查询数据库,但是数据库也无此记录,我们没有将这次查询的null写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。2、风险利用不存在的数据进行攻击,数据库瞬时压力增大,最终导致崩溃3、解决null结果缓存,并加入短暂过期时间;做好参数校验,包括前端和后端,尽量在系统上有对无效参数进行过滤。二、缓存击穿1、描述对于一些设置了过期时间的key,如果这些key可能会在某些时间点被超高并发地访问,是一原创 2021-07-18 22:13:38 · 248 阅读 · 0 评论 -
redis缓存数据库(持久化机制(快照RDB,追加文件AOF))
更多学到请到:https://www.processon.com/view/6076a7ffe401fd2d66980f5b在推荐一款全栈学习地十:https://www.processon.com/view/60504b5ff346fb348a93b4fa一、默认使用RDB持久化配置:save 900 1 900秒之后至少有1个key发生变化则保存快照save 300 10 300秒之后至少有10个key发生变化则保存快照save 60 10000 60秒之后至少有10000个key发生变化则保原创 2021-07-17 10:43:45 · 183 阅读 · 0 评论 -
redis缓存数据库(redis过期键删除策略)
更多学习地址:https://www.processon.com/view/60504b5ff346fb348a93b4fa1、定时删除(01)Redis不可能时时刻刻遍历所有被设置了生存时间的key,来检测数据是否已经到达过期时间,然后对它进行删除。(02)立即删除能保证内存中数据的最大新鲜度,因为它保证过期键值会在过期后马上被删除,其所占用的内存也会随之释放。但是立即删除对cpu是最不友好的。因为删除操作会占用cpu的时间,如果刚好碰上了cpu很忙的时候,比如正在做交集或排序等计算的时候,就会给c原创 2021-07-11 19:26:18 · 237 阅读 · 0 评论 -
redis.clients.jedis.exceptions.JedisConnectionException: no reachable node in cluster
一、redis集群问题1、出现这种问题,一般的是服务器节点出现问题,请检查你的集群环境中的各个节点运行情况。2、也有可能是程序代码中的问题,在获取redis中存储的数据时,获取不到数据而导致的数据。...原创 2019-03-05 18:58:58 · 1231 阅读 · 0 评论 -
Redis集群启动时报错Increased maximum number of open files to 10032 (it was originally set to 1024).
错误信息如下解决方法如下: 集群配制文件不同步也损坏,把其他正常服务器上的配制文件同步到该服务器。 文件名是:nodes.conf原创 2019-07-23 14:21:58 · 4536 阅读 · 0 评论