更多python、Linux、网络安全学习内容,可移步:www.oldboyedu.com或关注\"老男孩Linux\"公众号
分类: Python/Ruby
2021-07-27 16:59:45
Redis集群方案该怎么做?都有哪些方案?Redis回收进程是如何工作的?这是面试找工作期间最常见的问题,接下来我们一起来看看吧。
Redis集群方案该怎么做?具体分为三种:
1. codis:目前用的最多的集群方案,基本和twemproxy一致的效果,但它支持在节点数量改变的情况下,旧节点数据客恢复到新hash节点。
2. Redis cluster3.0自带的集群,特点在于他的分布式算法不是一致性hash,而是hash槽的概念,以及自身支持节点设置从节点。
3. 在业务代码层变现,起几个毫无关联的Redis实例,在代码层,对key进行hash计算,然后去对应的redis实例操作数据。这种方式对hash层代码要求比较高,考虑部分包括,节点失效后的替代算法方案,数据震荡后的字典脚本恢复,实例的监控等等。
Redis回收进程是如何工作的?
一个客户端运行了新的命令,添加了新的数据。
Redis检查内存使用情况,如果大于max memory的限制,则根据设定好的策略进行回收。
一个新的命令被执行等等,所以我们不断地穿越内存限制的边界,通过不断达到边界然后不断回收到边界以下。
如果一个命令的结果导致大量内存被使用,不用多久内存限制就会被这个内存使用量超越。