Redis 缓存穿透之监控解决方法
其他
2020-10-26 11:21:19
阅读次数: 0
Redis 缓存穿透之监控解决方法
李万鸿2020-6-1
Redis的缓存穿透是个常见问题,会给数据库造成雪崩压力,一般解决办法是加锁和双缓存,代价较大,只要努力思考探索,总有办法解决。这里给出一个新思路,用监控线程来解决此问题。
开发一个monitor线程,对存入的key的超时进行统一监控,当有key写入redis时,记录下key、expire和createTime,然后定时如30秒比较一次所有的key的超时,if(now()-createTime>
Expire-30000),现在的时间减去设置key的时间大于超时的时间减去30秒,那么就需要在redis重设这个key,防止失效,再更新这个key的线程保存的key、expire和createTime这3个数据。
这样redis的数据一致有效,从而防止大量key同时失效造成数据库雪崩压力。此方法简单有效,值得采用。欢迎讨论商榷,谢谢您!
转载自blog.csdn.net/qq_34231800/article/details/106479824