如果不设置最�内存��或者设置最�内存��为0,在64位操作系统下不限制内存��,在32位操作系统下最多使�3GB内
存
R
e
d
i
s
的内存淘汰
既然可以设置Redis最大占用内存大小,那么配置的内存就有用完的时候。那在内存用完的时候,还继续往Redis里面添加数据不就
没内存可用了吗?
实际上Redis定义了�种策略用来处理这种情况:
noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外)
allkeys-lru:从所有key中使用LRU算法进行淘汰
volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰
allkeys-random:从所有key中随机淘汰数据
volatile-random:从设置了过期时间的key中随机淘汰
//设置Redis最�占�内存��为100M
127.0
.
0.1
:
6379
>
config
set
maxmemory
100mb
//获取设置的Redis能使�的最�内存��
127.0
.
0.1
:
6379
>
config
get
maxmemory
复制代码