2025年【Redis Cluster集群】redis cluster 多mster写入,读写分离,高可用

【Redis Cluster集群】redis cluster 多mster写入,读写分离,高可用4 Redis Cluster 集群 redis cluster 多 mster 写入 读写分离 高可用 redis cluster 提供了多个 master 分布式存储 数据可以分布式存储到多个 master 上 读写分离 每个 master 都带着 slave 自动实现读写分离

大家好,我是讯享网,很高兴认识大家。

4. 【Redis Cluster集群】redis cluster 多mster写入,读写分离,高可用

redis cluster,提供了多个master,
分布式存储:数据可以分布式存储到多个master上;
读写分离:每个master都带着slave,自动实现读写分离;
高可用:每个master如果故障,redis cluster可以自动将slave切换成master,以此实现redis cluster的高可用

1. 测试:多master写入 -> 海量数据的分布式存储

1.1 redis cluster海量数据的分布式存储原理

  1. 往redis cluster写入一个数据,可以将请求发送到任意一个master上去执行。
  2. 每个master都会根据key值计算对应的CRC16值,然后对16348个hash slot取模,得到key对应的hash slot,再通过hash slot找到对应的master。
  3. 如果对应的 master 就在自己本地的话, set k1 v1,k1这个key对应的master在自己本地的话,就自己处理掉好了。如果对应的 master 不在自己本地,是其他master的话,那么就会给客户端返回一个moved error,告诉你,应该到哪个master上去执行这条命令的写入。

2. 多master写入

什么叫做 多master写入?

多master写入,就是每条数据只能存在于一个master上,不同的master存储不同的数据,分布式数据存储; 举例:100w条数据,5个master,每个master就负责存储20w条数据,分布式数据存储。 

讯享网

3. 测试:不同master各自slave读取->读写分离

3.1 slave 节点读取数据

在redis cluster中,如果你要在slave 读取数据,那么需要先执行 readonly 执行,才能 读取对应master写入的数据,redis cluster 的slave默认是不支持数据的读和写的

3.2 redis cluster 自动重定向

redis-cli -c启动,就会自动进行各种底层的重定向操作。

3.3 redis cluster 读写分离的缺点:

  1. redis cluster的核心理念:不是使用slave进行读写分离,而是使用 slave多高可用的,每个mater挂一两个slave,主要是做数据的热备,还有就是在master故障时的主备切换,实现高可用的。
  2. redis cluster默认不支持slave节点的读或者写的,跟我们手动基于replication搭建的主从架构不一样。


    讯享网

  3. 要在 slave 节点读取数据,要先执行 readonly 指定,再执行获取数据执行,才能读取到数据。
  4. redis cluster,是主从架构,虽然可以做读写分离,复杂了点,但是也可以做;但是jedis客户端最redis cluster读写分离支持不是很好,默认的话,读和写都是到master上去执行的。如果需要让jedis做redis cluster的读写分离的访问,可能还得自己去修改源代码,成本较高。
  5. redis cluster做缓存架构时,就没有所谓的读写分离架构,都和写都是到master去执行的。

3.4 redis cluster master可以任意扩展。

redis cluster 的架构下,实际上master就是可以任意扩展的,你如果要支持更大的读吞吐量,或者写吞吐量,或者数据量,都可以直接对master进行横向扩展,也可以实现支持更高的吞吐量。

4. 测试:redis cluster 自动故障切换,保证高可用性。

可以通过查看redis日志,查看节点的切换和挂载情况。

  1. 将其中的一个master杀掉,看他对应的slave节点是否能成功的切换成master。
  2. 将杀掉的master的进程重新启动起来,看是否会作为slave角色挂载到master上面去。

在这里插入图片描述

小讯
上一篇 2025-02-06 22:11
下一篇 2025-03-30 07:04

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/34623.html