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+"个键");
    }
相关推荐
xinghunzhiye201030 分钟前
redis升级
数据库·redis·缓存
kk在加油1 小时前
Redis基础数据结构
数据结构·数据库·redis
慌糖2 小时前
CentOS 安装 Redis 简明指南
linux·redis·centos
sqyaa.2 小时前
Guava LoadingCache
jvm·缓存·guava
R_AirMan4 小时前
深入浅出Redis:一文掌握Redis底层数据结构与实现原理
java·数据结构·数据库·redis
Hello.Reader5 小时前
RedisJSON 内存占用剖析与调优
数据库·redis·缓存
晨岳8 小时前
CentOS 安装 JDK+ NGINX+ Tomcat + Redis + MySQL搭建项目环境
java·redis·mysql·nginx·centos·tomcat
执笔诉情殇〆8 小时前
前后端分离(java) 和 Nginx在服务器上的完整部署方案(redis、minio)
java·服务器·redis·nginx·minio
都叫我大帅哥9 小时前
🌟 Redis缓存与数据库数据一致性:一场数据世界的“三角恋”保卫战
redis
都叫我大帅哥9 小时前
Redis缓存雪崩:一场本可避免的"雪崩"灾难
redis