2011-03-02 57 views
13

具体而言,我只有1GB的可用内存,并且只想为Redis使用300MB。我如何配置它才能使用最多300MB的内存?如何设置Redis可以使用的最大内存大小?

出于好奇,当您尝试插入新数据并且Redis已经使用了所有分配的内存时会发生什么?

回答

11

maxmemory是防止Redis使用太多RAM的正确配置选项。

如果插入导致maxmemory超过,插入操作将有时失败。

尽管如此,Redis将尽一切力量防止操作失败。在较新版本的Redis中,您可以在配置中配置内存回收策略,也可以通过设置maxmemory-policy选项来配置。另外,如果启用了虚拟内存选项,则Redis将开始将陈旧数据存储到磁盘。

更多信息:

7

您可以使用maxmemory选项:maxmemory 314572800表示300mb。

+3

我可能是错的,但我没有发现任何在阐明了单位maxmemory Redis的文档,这是非常令人沮丧。显然,它是以字节为单位的? – 2013-07-19 19:41:08

+0

这是Redis最新版本中的maxmemory Xgb。 – 2016-01-10 01:15:06

+0

单元在配置文件的顶部被调用。这是旧版本的配置文件:https://raw.githubusercontent.com/antirez/redis/2.4/redis.conf和3.0:https://raw.githubusercontent.com/antirez/redis/3.0/redis。 CONF – Brad 2016-03-08 01:50:23

相关问题