假设您在一台只有很less内存的小型服务器上托pipeRedis。
如果数据太多会发生什么情况,所有的RAM都用完了?
Redis死了吗? 还是继续运作?
首先,它会尝试将一些使用率较低的数据从RAM中移出并进入交换文件空间(如果有的话)。 之后,OOM(内存不足)杀手将开始寻找基于一些通用规则而看起来不那么重要的进程,并将其closures以便系统能够存活。 如果失败了,那么系统最终会堵塞。 另外,如果OOM杀手决定杀死对你来说重要的东西或者机器的function,那么事情就会变得不合时宜。
取决于你如何configuration它。 您始终可以使用ulimit来限制redis进程可用的资源,但是您应该首先了解redis如何使用内存。
您可以configurationredis来限制在移动到交换文件之前使用的ram的数量。
这里有一篇关于虚拟内存如何在redis中工作的博客文章 。