Redis-Cluster集群

本文详细介绍了Redis-Cluster集群的设计、搭建、核心概念,包括哈希槽、节点通讯、故障检测与转移,以及在SpringBoot中的整合。讨论了集群的优缺点,如无中心结构、线性可扩展性和数据异步复制的不足。提供了集群搭建和扩容的步骤,以及客户端如何处理节点间的重定向。
摘要由CSDN通过智能技术生成

Redis-Cluster集群

 

Redis-Cluster集群简介

一、Redis-Cluster集群介绍

1、redis cluster集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。

2、Redis cluster集群不需要sentinel哨兵也能完成节点移除和故障转移的功能。需要将每个节点设置成集群模式,这种集群模式没有中心节点

3、高达 1000 个节点的高性能和线性可扩展性。没有代理,使用异步复制,并且不对值执行合并操作。

二、为何使用Redis-Cluster集群

Redis集群演变过程

1.单机版

核心技术:持久化 持久化是最简单的高可用方法(有时甚至不被归为高可用的手段),主要作用是数据备份,即将数据存储在硬盘,保证数据不会因进程退出而丢失。

2.主从复制

复制是高可用Redis的基础,哨兵和集群都是在复制基础上实现高可用的。复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷是故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。

3.哨兵

在复制的基础上,哨兵实现了自动化的故障恢复。缺陷是写操作无法负载均衡;存储能力受到单机的限制。

4.集群

通过集群,Redis解决了写操作无法负载均衡,以及存储能力受到单机限制的问题,实现了较为完善的高可用方案

在这里插入图片描述

三、Redis-Cluster集群设计

Redis-Cluster采用无中心结构,其结构特点: 1、每个节点都和其它节点通过互ping保持连接,每个节点保存整个集群的状态信息,可以通过连接任意节点读取或者写入数据(甚至是没有数据的空节点)。 2、节点的fail是通过集群中超过半数的节点检测失效时才生效。 3、Redis集群预分好16384个槽,当需要在 Redis 集群中放置一个 key-value 时,根据公式HASH_SLOT=CRC16(key) mod 16384的值,决定将一个key放到哪个槽中。

四、Redis-Cluster集群缺点

  • 数据通过异步复制,不保证数据的强一致性。

  • Redis Cluster 不支持像 Redis 的独立版本那样支持多个数据库。只有数据库 0 并且不允许使用SELECT命令。

  • Key 批量操作限制,如使用 mset、mget 目前只支持具有相同 slot 值的 Key 执行批量操作。对于映射为不同 slot 值的 Key 由于 Keys 不支持跨 slot 查询,所以执行 mset、mget、sunion 等操作支持不友好。

  • Key 事务操作支持有限,只支持多 key 在同一节点上的事务操作,当多个 Key 分布于不同的节点上时无法使用事务功能。

Redis-Cluster集群搭建

一、Cluster集群搭建

[详情参考博客]  https://www.cnblogs.com/mafly/p/redis_cluster.html 

1、创建目录

#创建集群目录
mkdir /usr/local/redis-cluster
#创建实例目录
mkdir -p 900{1,2,3,4,5,6}/data

2、拷贝redis实例

cp /usr/local/redis/redis.conf /usr/local/redis-cluster/9001

3、修改实例配置文件

port 9001(每个节点的端口号)
daemonize yes
dir /usr/local/redis-cluster/9001/data/(数据文件存放位置)
pidfile /var/run/redis_9001.pid(pid 9001和port要对应)
cluster-enabled yes(启动集群模式)
cluster-config-file nodes9001.conf(9001和port要对应)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值