redis内存设置--结论是超过内存用量会删key

同事在内存很低(2G内存的云服务器)测试机上,跑了2个含有大量数据的redis库,结果内存不足,redis挂掉了。

按照我脑补理解,应该是可以设置内存用量,把常用数据,部分加载到内存,不常用的,保存到硬盘上。结果,不是这样。在RDB模式下,数据就是整块的。如果超出,无论配置哪种淘汰策略,redis干的事儿,就是删key。没错,删key!问你怕不怕!

结论:如果redis数据中,存的是关键数据,怕丢失的数据,那么,redis数据占用的内存,不要超过内存大小的70%(保险起见不要超过55%),以免内存不足!不要期望什么内存淘汰策略!它所做的居然是删数据!LRU, LFU 迁出都是!


如果数据是不怕丢的缓存数据,那么可以在redis.conf里,配置如下两项,进行内存数据淘汰(其实是删除):

1,redis可以使用的最大内存(这里我设置为64M):

maxmemory 64000000

2,什么样的数据,可以保存在内存中(这里我使用的策略为:从内存中,“迁出”其实就是删除,不常用的key):

maxmemory-policy allkeys-lfu




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值