1、概述

之前聊了Redis的哨兵模式,哨兵模式解决了读的并发问题,也解决了Master节点单点的问题。

但随着系统越来越庞大,缓存的数据越来越多,服务器的内存容量又成了问题,需要水平扩容,此时哨兵模式就无法支持了,需要使用Redis的集群模式(Redis Cluster)。

Redis的集群模式(Redis Cluster),支持扩容、负载均衡、主从高可用,最经典的集群配置方案是三主三从,也就是三台Master服务节点,三台Slave服务节点。

接下来我们就来聊聊三主三从的Redis集群是如何搭建的。

2、场景描述

服务器1 IP:192.168.1.144

服务器2 IP:192.168.1.145

服务器3 IP:192.168.1.146

服务器4 IP:192.168.1.22

服务器5 IP:192.168.1.23

服务器6 IP:192.168.1.24

关于Redis的安装,请参见我的另一篇文章《Redis的安装、基本使用以及与SpringBoot的整合》。

3、Redis集群的搭建

3.1 修改 Redis 配置文件

# cd /usr/local/redis/

# vi redis.conf

详细配置参见下面截图:

3.2 删除旧的数据文件

如果不删除旧的数据文件,启动集群时会报错。

# cd /usr/local/redis/db

# rm -rf *.rdb *.aof

3.3 重启Redis

# cd /etc/init.d/

# ./redis_init_script stop

# ./redis_init_script start

所有Redis服务器都需按上面的三个步骤进行操作,即 3.1,3.2,3.3。

3.4 设置集群关系(在其中一台集群节点设置就可以)

# redis-cli -a zhuifengren --cluster create 192.168.1.144:6379 192.168.1.145:6379 192.168.1.146:6379 192.168.1.22:6379 192.168.1.23:6379 192.168.1.24:6379 --cluster-replicas 1

3.5 查看集群信息

# redis-cli -a zhuifengren --cluster check 192.168.1.22:6379

到此为止,Redis集群搭建成功。

4. 与SpringBoot整合

在之前的基础上修改yml文件即可

spring:
redis:
password: zhuifengren
cluster:
nodes: 192.168.1.144:6379,192.168.1.145:6379,192.168.1.146:6379,192.168.1.22:6379,192.168.1.23:6379,192.168.1.24:6379

5. 综述

今天我们聊了一下Redis集群的搭建,以及如何与SpringBoot进行整合,希望能对大家有所帮助。

欢迎大家多多评论交流,共同成长。

关注追风人聊Java,每天更新Java干货。

Redis集群的搭建及与SpringBoot的整合的更多相关文章

  1. linux环境(CentOS-6.7)下redis集群的搭建全过程

    linux环境下redis集群的搭建全过程: 使用mount命令将光盘挂载到/mnt/cdrom目录下: [root@hadoop03 ~]# mount -t iso9660 -o ro /dev/ ...

  2. 【redis】 linux 下redis 集群环境搭建

    Redis集群 (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 127.0.0.1:63791 ...

  3. 2.Redis集群环境搭建

    转载请出自出处:http://www.cnblogs.com/hd3013779515/ 一.基本概念 1.redis集群是一个可以在多个节点之间进行数据共享的设施.redis集群提供了以下两个好处1 ...

  4. redis集群的搭建详细教程

    1 Redis-cluster架构图             redis-cluster投票:容错  (至少要三个才可以,才能超过半数) 架构细节: (1)所有的redis节点彼此互联(PING-PO ...

  5. <正则吃饺子> :关于redis集群的搭建、集群测试、搭建中遇到的问题总结

    项目中使用了redis ,对于其基本的使用,相对简单些,根据项目中已经提供的工具就可以实现基本的功能,但是只是这样的话,对于redis还是太肤浅,甚至刚开始时候,集群.多节点.主从是什么,他们之间是什 ...

  6. Redis集群环境搭建

    Redis集群cluster环境搭建 描述:本章节主要单服务器搭建集群,在一个服务器上启动多个不同端口的redis服务,非真实环境. 真实环境下redis集群会搭建在多个物理服务器上,并非单一的服务器 ...

  7. (转) 淘淘商城系列——Redis集群的搭建

    http://blog.csdn.net/yerenyuan_pku/article/details/72860432 本文我将带领大家如何搭建Redis集群.首先说一下,为何要搭建Redis集群.R ...

  8. Redis集群的搭建【转】

    redis集群的特点: 1.机器多,能够保证redis服务器出现问题后,影响较小 2.自备主从结构,自动的根据算法划分主从结构.动态的实现 3.能够根据主从结构自动的实现高可用 4.实现数据文件的备份 ...

  9. redis集群redis-cluster搭建

    redis集群搭建--参考微信公众号(诗情画意程序员):https://mp.weixin.qq.com/s/s5eJE801TInHgb8bzCapJQ 这是来自redis官网的一段介绍,大概意思就 ...

随机推荐

  1. 一文读懂Spring动态配置多数据源---源码详细分析

    Spring动态多数据源源码分析及解读 一.为什么要研究Spring动态多数据源 ​ 期初,最开始的原因是:想将答题服务中发送主观题答题数据给批改中间件这块抽象出来, 但这块主要使用的是mq消息的方式 ...

  2. Python 列表解析式竟然支持异步?

    PEP原文:https://www.python.org/dev/peps/pep-0530 PEP标题:PEP 530 -- Asynchronous Comprehensions PEP作者:Yu ...

  3. Golang语言系列-08-结构体

    结构体 自定义类型和类型别名的区别 package main import "fmt" // 自定义类型和类型别名的区别 // type后面跟的是类型 type myInt int ...

  4. Java LinkedList【笔记】

    Java LinkedList[笔记] LinkedList LinkedList 适用于要求有顺序,并且会按照顺序进行迭代的场景,依赖于底层的链表结构 LinkedList基本结构 LinkedLi ...

  5. Kurento实战之三:知识点小导游

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  6. 位(bit)、字节(Byte)、字(Word)、双字(Dword)之间的关系

    位(bit): bit(简写:b),是计算机数据存储最小的单位,二进制中,0或者1就是一个位(比特位)bit. 字节: Byte(简写:B),是计算机信息技术用于计量存储容量的一种计量单位,通常情况下 ...

  7. Oracle 11g数据库下载安装教程

    今天重装系统之后发现甲骨文的网站变化较大,下载安装废了一点时间,留下个笔记为以后再装留作参考.本教程是win10,64位系统环境下 1.下载 下载的时候需要登陆甲骨文账号,如果没有的话申请一个也挺快. ...

  8. Oracle 数据库的导入与导出

    1.导入 打开cmd,用管理员登录:sqlplussys as sysdba密码不用输: 创建表空间:create tablespace tablespaceName datafile 'E:\tab ...

  9. docker部署minio

    快速部署 docker run -p 9000:9000 --name myminio \ -e "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE" \ ...

  10. 程序员必须知道的数据结构:HashMap 与 LinkedHashMap

    为什么要说 HashMap 与 LinkedHashMap?第一:这两种数据结构是 Java Coder 中经常使用的数据结构.第二:这两种结构是最合适的能说明链表与数组的结构关系.在开始之前首先必须 ...