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+"个键");
    }
相关推荐
百***6972 小时前
redis 使用
数据库·redis·缓存
爬山算法2 小时前
Redis(124)Redis在电商系统中的应用有哪些?
数据库·redis·缓存
q***46522 小时前
如何使用Spring Boot框架整合Redis:超详细案例教程
spring boot·redis·后端
Dontla3 小时前
React useMemo(当依赖项未变化,重复渲染时直接返回上一次缓存计算结果,而非重新执行计算)
前端·react.js·缓存
朝九晚五ฺ4 小时前
用Rust从零实现一个迷你Redis服务器
服务器·redis·rust
kong79069289 小时前
SpringCache缓存
java·spring·缓存
4***14909 小时前
后端分布式缓存集群,Redis Sentinel
redis·分布式·缓存
瑞思蕊萌15 小时前
redis实战篇--商品缓存模块
数据库·redis·缓存
angushine19 小时前
SpringCloud Gateway缓存body参数引发的问题
spring cloud·缓存·gateway
ruleslol21 小时前
SpringBoot18-redis的配置
spring boot·redis