当前位置:   article > 正文

Redis内存满了怎么办,Redis导致系统内存爆满

redis内存满了怎么办

一、修改配置文件

Redis长期使用,不设置过期时间,导致内存爆满,可以修改Redis的配置文件redis.conf 文件中,配置参数 maxmemory 的大小。一般的项目maxmemory设置为3~5G即可,也可以根据自己服务器内存大小进行配置。

maxmemory 4G
  • 1

在这里插入图片描述

二、命令

通过命令修改,链接redis服务通过命令动态修改内存大小。

1 //设置Redis最大占用内存大小为100M
2 127.0.0.1:6379> config set maxmemory 100mb
3 //获取设置的Redis能使用的最大内存大小
4 127.0.0.1:6379> config get maxmemory
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

三、修改Redis淘汰策略

Redis 6种的淘汰策略:

策略说明
noeviction(默认策略)若是内存的大小达到阀值的时候,所有申请内存的指令都会报错;
allkeys-lru所有key都是使用LRU算法进行淘汰;
volatile-lru所有设置了过期时间的key使用LRU算法进行淘汰;
allkeys-random所有的key使用随机淘汰的方式进行淘汰;
volatile-random所有设置了过期时间的key使用随机淘汰的方式进行淘汰;
volatile-ttl所有设置了过期时间的key根据过期时间进行淘汰,越早过期就越快被淘汰

allkeys-lru策略使用场景:

项目内有一部分是热点数据,而剩下的数据是冷门数据,或者我们不太清楚我们应用的缓存访问分布状况,这时使用allkeys-lru。
Redis淘汰策略也可以通过命令的方式进行配置:

1 // 获取maxmemory-policy配置
2 127.0.0.1:6379> config get maxmemory-policy
3 // 设置maxmemory-policy配置为allkeys-lru
4 127.0.0.1:6379> config set maxmemory-policy allkeys-lru
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/685087
推荐阅读
相关标签
  

闽ICP备14008679号