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+"个键");
    }
相关推荐
无敌的神原秋人14 小时前
关于Redis不同序列化压缩性能的对比
java·redis·缓存
恣艺16 小时前
Redis列表(List):实现队列/栈的利器,底层原理与实战
数据库·redis·list
百思可瑞教育17 小时前
Vue中使用keep-alive实现页面前进刷新、后退缓存的完整方案
前端·javascript·vue.js·缓存·uni-app·北京百思可瑞教育
论迹18 小时前
【Redis】-- 持久化
数据库·redis·缓存
getdu18 小时前
Redis面试相关
数据库·redis·面试
belldeep20 小时前
Win10 上 Debian 12 如何安装 Redis ?
运维·redis·debian
孙同学_20 小时前
【C++】AVL树
c++·redis
island131420 小时前
【Redis#9】其他数据结构
数据结构·数据库·redis
winfield82120 小时前
Redis 线上问题排查完整手册
redis
七夜zippoe21 小时前
多级缓存架构实战手册:Caffeine+Redis 从设计到落地的全链路解决方案
redis·缓存·架构