redis 过期与清理

redis 键过期了是不是就不用清理了?

答案:基本上是。

在Redis中,当一个键过期时,它会被自动标记为"已过期",但并不意味着它会立即从内存中移除。Redis处理过期键的方式有两种主要机制:惰性删除与定期删除,这两种机制结合使用,既保证了大部分过期键能够及时得到清理,又避免了因频繁扫描所有键而导致的性能问题。

那么是否需要手动清理?

答案:除非键过期时间设置不合理,或者迫于并发压力需要手动清理。

手动清理方法:

java 复制代码
    private int _clearBuffs(String pattern){
        int rows=0;
        Collection<String> keys=redisService.keys(pattern);
        for(String key:keys){
            redisService.deleteObject(key);
            rows++;
        }
        return  rows;
    }


    @PostMapping("/clearActiveBuffs")
    @ApiOperation(value = "清除活跃统计缓存",notes = "")
    public JsonResult clearActiveBuffs() throws Exception {
        int rows=_clearBuffs("active:*");
        return  toJRAjaxData("清除成功共!"+rows+"个键");
    }
相关推荐
TitosZhang1 小时前
BIO、NIO、AIO详解
java·redis·nio
kfepiza1 小时前
Spring的三级缓存原理 笔记251008
笔记·spring·缓存
jun71181 小时前
msi mesi moesi cpu缓存一致性
缓存
极限实验室12 小时前
Easysearch 字段'隐身'之谜:source_reuse 与 ignore_above 的陷阱解析
数据库·redis
朝九晚五ฺ13 小时前
【Redis学习】Redis常用数据类型的万字详解
redis·学习·哈希算法
2351617 小时前
【MySQL】MVCC:从核心原理到幻读解决方案
java·数据库·后端·sql·mysql·缓存
夏鹏今天学习了吗21 小时前
【LeetCode热题100(35/100)】LRU 缓存
算法·leetcode·缓存
昔冰_G21 小时前
Vue内置组件KeepAlive——缓存组件实例
vue.js·缓存·vue3·vue2·keep-alive·vue组件缓存·vue内置组件
摇滚侠1 天前
【IT老齐456】Spring Boot优雅开发多线程应用,笔记01
spring boot·redis·笔记
2301_772093561 天前
tuchuang_myfiles&&share文件列表_共享文件
大数据·前端·javascript·数据库·redis·分布式·缓存