我很确定在这个阶段Redis需要在操作系统上有一定数量的可用内存才能运行。在过去的几周里,我看到Redis(Linux)内存不足,还有几千兆字节的RAM仍然免费,而在Windows上,当你在系统上使用大量内存但它仍然拥有时它拒绝启动一堆免费,如下面的截图所示。
Windows上的错误提示了为什么会发生这种情况(虽然我不认为它在Linux上是相同的)。但是,我的问题更为通用。 Redis需要多少可用内存才能运行?
答案 0 :(得分:1)
Redis要求RAM在数据大小的x2到x3之间。 maxheap
标志是Windows特定的。
答案 1 :(得分:0)
根据Redis常见问题解答,如果没有特定的Linux配置,则可能需要 2x 存储数据集。从文档中:
简短答案:echo 1> / proc / sys / vm / overcommit_memory:)
使用此配置,分叉的进程(负责将数据集保存到磁盘)将能够与原始进程更轻松地共享内存页面,因此它不需要那么多的内存。
您可以在此处了解更多信息:https://redis.io/topics/faq#background-saving-fails-with-a-fork-error-under-linux-even-if-i-have-a-lot-of-free-ram