47人参与 • 2026-07-19 • Redis
redis集群架构是基础主从架构的基础下,兼有哨兵的选举功能,并且可以横向拓展的高可用架构。redis集群至少需要三个master节点,并且建议奇数节点的部署模式,主要是由于master的选举规则限制。
redis集群master选举规则是当slave感知master节点变为fail时,会主动广播其他集群中其他节点,只有master节点会返回一个ack信息(master只会响应第一个接受到广播的slave节点并回应),当超过半数的master返回信息后,该slave会升级为主节点,并且广播消息通知到其他集群节点。
redis集群搭建成功后,会给每一个master分配指定的hash槽,存储数据时会根据key值得hash值取模存入具体的master节点。当需要横向扩容时,也可以根据命令分配新的mater指定的hash槽,在分配完hash槽时会将数据自动迁移到新的master。
min‐replicas‐to‐write 1
当主节点写入时,最少需要同步到slave节点的个数才能认为是写成功(和选举功能雷同),但这样会消耗一定的性能。
1. volatile-ttl:在筛选时,会针对设置了过期时间的键值对,根据过期时间的先后进行删 除,越早过期的越先被删除。
2. volatile-random:就像它的名称一样,在设置了过期时间的键值对中,进行随机删除。
3. volatile-lru:会使用 lru (以访问时间为参考)算法筛选设置了过期时间的键值对删除。
4. volatile-lfu:会使用 lfu (以访问次数为参考)算法筛选设置了过期时间的键值对删除。
在服务刚启动时,如果发生大量的请求过来,会导致没有空闲链接,开始会需要创建很多的连接,降低了访问速率,这种情况一般会采用缓存预热的方式,创建出部分的redis连接。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论