Redis内存满了怎么办(新年快乐)
2022/2/2 19:45:36
本文主要是介绍Redis内存满了怎么办(新年快乐),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Redis内存满了怎么办(新年快乐)
入我相思门,知我相思苦。
长相思兮长相忆,短相思兮无穷极。
一、配置文件
Redis长期使用或者不设置过期时间,导致内存爆满或不足,可以到Redis的配置文件redis.conf 文件中,配置参数 maxmemory 的大小。一般的项目maxmemory设置为3~5G就够用了。
二、命令
通过命令修改,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
三、修改Redis淘汰策略
Redis提供了6种的淘汰策略:
- noeviction(默认策略):若是内存的大小达到阀值的时候,所有申请内存的指令都会报错;
- allkeys-lru:所有key都是使用LRU算法进行淘汰;
- volatile-lru:所有设置了过期时间的key使用LRU算法进行淘汰;
- allkeys-random:所有的key使用随机淘汰的方式进行淘汰;
- volatile-random:所有设置了过期时间的key使用随机淘汰的方式进行淘汰;
- volatile-ttl:所有设置了过期时间的key根据过期时间进行淘汰,越早过期就越快被淘汰。
部分策略使用场景:
- 若在Redis中的数据有一部分是热点数据,而剩下的数据是冷门数据,或者我们不太清楚我们应用的缓存访问分布状况,这时可以使用allkeys-lru。
- 若所有的数据访问的频率大概一样,就可以使用allkeys-random的淘汰策略。
Redis的淘汰策略也可以在redis.conf 配置文件中配置:
同时,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
入我相思门,知我相思苦。
长相思兮长相忆,短相思兮无穷极。
这篇关于Redis内存满了怎么办(新年快乐)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-21redisinsight-v2
- 2024-02-26Typed property App\Api\Mapper\GamePropsConfigMapper::$apiRedis must not be accessed before initia-icode9专业技术文章分享
- 2024-02-21redisson getlock
- 2024-02-20redis config
- 2024-02-20redis leaderboard
- 2024-01-23缓存选型:Redis or MemCache
- 2024-01-22面试官:Redis持久化能关吗?怎么关?
- 2024-01-21Redis压测工具redis-benchmark-icode9专业技术文章分享
- 2024-01-19这才是你应该了解的Redis数据结构!
- 2024-01-18Redis系列:使用 Redis Module 扩展功能