我应该使用 vm 还是使用 Redis 2.4 设置最大内存

我应该使用 vm 还是使用 Redis 2.4 设置最大内存

redis 2.4vm-enabled no是默认的,所以我使用 redis 作为数据库(而不是缓存),并且有时数据库大小可能大于内存,我应该启用它吗?

或者我应该采取预防措施maxmemory以防止数据丢失?

答案1

http://redis.io/topics/faq

如果 Redis 内存耗尽会发生什么?

在现代操作系统中,malloc() 返回 NULL 的情况并不常见,通常服务器会开始交换,Redis 性能会下降,因此您可能会注意到有些地方出了问题。INFO 命令将报告 Redis 使用的内存量,因此您可以编写脚本来监控 Redis 服务器以检查关键情况。或者,可以使用配置文件中的“maxmemory”选项来限制 Redis 可以使用的内存。如果达到此限制,Redis 将开始以错误回复写入命令(但将继续接受只读命令),或者您可以将其配置为在使用 Redis 进行缓存的情况下,当达到最大内存限制时逐出键。

什么都不做……?最糟糕的情况是,交换会导致严重的性能下降,但仅此而已?无论如何,您的应用程序中都有错误处理,不是吗?

相关内容