首页 > 数据库 >Redis内存淘汰策略

Redis内存淘汰策略

时间:2023-04-26 20:46:38浏览次数:32  
标签:过期 Redis 写入 内存 key 移除 淘汰 容纳

Redis内存淘汰策略是指Redis用于缓存的内存不足时,怎么处理需要新写入且需要申请额外空间的数据

 

全局的键空间选择性移除

noeviction:当内存不足以容纳新写入数据时,新写入操作会报错

allkeys-lru:当内存不足以容纳新写入数据时,在键空间中移除最近最少使用的key

allkeys-random:当内存不足以容纳新写入数据时,在键空间中随机移除某个key

 

设置过期时间的键空间选择性移除

volatile-lru:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中移除最少使用的key

volatile-random:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中随机移除某个key

volatile-ttl:当内存不足以容纳新写入数据时,在设置了过期时间的监控件中,有更早过期时间的key先移除

标签:过期,Redis,写入,内存,key,移除,淘汰,容纳
From: https://www.cnblogs.com/yancy95/p/17357203.html

相关文章

  • Redis部署与配置
    一、下载官网地址:https://redis.io/download/ 二、安装 三、配置——改端口,设置密码打开目录“C:\ProgramFiles\Redis”搜索“port”,更换端口搜索“requirepass”,设置密码重启服务 四、使用使用redis-studio连接redis Done. ......
  • Django 查询数据库不释放内存的情况
    查询结果未及时清空如果查询结果较大,可能会占用很多内存。在使用完查询结果后,应该及时清空,以释放占用的内存。可以通过将查询结果赋值给一个变量,然后使用del关键字删除变量来清空查询结果。例如:result=MyModel.objects.all()#使用查询结果...#清空查询结果delresul......
  • Unity内存浅谈一
    Unity主要使用的还是c#,就先从这里写写吧.Net内存管理机制主要还是分为托管堆内存和非托管内存。 .Net托管堆内存管理主要的核心思想就是,你只管制造垃圾,它自己会帮你回收垃圾,因为自己是无法回收自己制造的垃圾的,必须依靠它的垃圾回收机制。托管堆主要的内存产生方式就是new一......
  • linux下分析java程序占用CPU、内存过高
    转:https://www.cnblogs.com/wu-wu/p/11923250.html CPU过高分析1)使用TOP命令查看CPU、内存使用状态可以发现CPU占用主要分为两部分,一部分为系统内核空间占用CPU百分比,一部分为用户空间占用CPU百分比。其中CPU状态中标示id的为空闲CPU百分比。当空闲CPU百分比越低,说明CPU占用率......
  • 第十二章:变量、作用域及内存
    学习要点:1.变量及作用域2.内存问题JavaScript的变量与其他语言的变量有很大区别。JavaScript变量是松散型的(不强制类型)本质,决定了它只是在特定时间用于保存特定值的一个名字而已。由于不存在定义某个变量必须要保存何种数据类型值的规则,变量的值及其数据类型可以在脚本的生命......
  • redis,python操作哨兵,python操作集群,缓存优化,缓存击穿,穿透,雪崩
    python操作哨兵高可用架构后》不能直接连接某一个主库》主库可能会挂掉,后来他就不是主库了之前的连接redis操作就不能用了importredisconn=redis.Redis(host='',port=6379)conn.set()conn.close()新的连接哨兵的操作连接哨兵服务器(主机名也可以用做域名)配置文件#redi......
  • shell脚本找出不过期的redis key
    1#!/bin/bash2#Redis通过scan找出不过期的key3#SCAN命令是一个基于游标的迭代器(cursorbasediterator):SCAN命令每次被调用之后,都会向用户返回一个新的游标,用户在下次迭代时需要使用这个新游标作为SCAN命令的游标参数,以此来延续之前的迭代过程。4#注意:当S......
  • 数据库占用大量内存的检测和优化(PostgreSQL)
    select*frompg_stat_user_tableswheren_live_tup>100000andseq_scan>0orderbyseq_tup_readdesclimit10;这个SQL查询用于检查在PostgreSQL数据库中,哪些用户表(usertables)的行数(livetuples)超过100,000,且进行了顺序扫描(sequentialscans)。查询结果会按顺序......
  • Linux常用命令redis相关
    一、查询文件中的内容vim文件名使用/xxx即可查询文件中的xxx单词,n下一个选中单词,N上一个选中单词。一、防火墙1.查看防火墙状态:firewall-cmd--state2.启动防火墙systemctlstartfirewalld3.关闭防火墙systemctlstopfirewalld二、redis1、开启redis服......
  • redis完成分布式锁
    1.正文1.Redis完成分布式锁2.redis的面试题。2.缓存当执行增删改操纵时必须保证缓存和数据库数据一致性。---删除缓存@OverridepublicDeptinsert(Deptdept){inti=deptMapper.insert(dept);returndept;}@Overridep......