Redis集群的搭建及与SpringBoot的整合
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的整合的更多相关文章
- linux环境(CentOS-6.7)下redis集群的搭建全过程
linux环境下redis集群的搭建全过程: 使用mount命令将光盘挂载到/mnt/cdrom目录下: [root@hadoop03 ~]# mount -t iso9660 -o ro /dev/ ...
- 【redis】 linux 下redis 集群环境搭建
Redis集群 (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 127.0.0.1:63791 ...
- 2.Redis集群环境搭建
转载请出自出处:http://www.cnblogs.com/hd3013779515/ 一.基本概念 1.redis集群是一个可以在多个节点之间进行数据共享的设施.redis集群提供了以下两个好处1 ...
- redis集群的搭建详细教程
1 Redis-cluster架构图 redis-cluster投票:容错 (至少要三个才可以,才能超过半数) 架构细节: (1)所有的redis节点彼此互联(PING-PO ...
- <正则吃饺子> :关于redis集群的搭建、集群测试、搭建中遇到的问题总结
项目中使用了redis ,对于其基本的使用,相对简单些,根据项目中已经提供的工具就可以实现基本的功能,但是只是这样的话,对于redis还是太肤浅,甚至刚开始时候,集群.多节点.主从是什么,他们之间是什 ...
- Redis集群环境搭建
Redis集群cluster环境搭建 描述:本章节主要单服务器搭建集群,在一个服务器上启动多个不同端口的redis服务,非真实环境. 真实环境下redis集群会搭建在多个物理服务器上,并非单一的服务器 ...
- (转) 淘淘商城系列——Redis集群的搭建
http://blog.csdn.net/yerenyuan_pku/article/details/72860432 本文我将带领大家如何搭建Redis集群.首先说一下,为何要搭建Redis集群.R ...
- Redis集群的搭建【转】
redis集群的特点: 1.机器多,能够保证redis服务器出现问题后,影响较小 2.自备主从结构,自动的根据算法划分主从结构.动态的实现 3.能够根据主从结构自动的实现高可用 4.实现数据文件的备份 ...
- redis集群redis-cluster搭建
redis集群搭建--参考微信公众号(诗情画意程序员):https://mp.weixin.qq.com/s/s5eJE801TInHgb8bzCapJQ 这是来自redis官网的一段介绍,大概意思就 ...
随机推荐
- Java 反射(一)反射简介、原理和应用场景
目录 一.动态语言和动态语言的比较 动态语言 静态语言 二.反射 简介 反射的常见使用 1. 代码编辑器 2. Spring等框架的IoC容器 3. 和注解的配合使用 原理 反射优缺点 调试查看 Cl ...
- PHP-Audit-Labs-Day1 - in_array函数缺陷
函数缺陷原理分析 先看一段简单的源代码 class Challenge{ const UPLOAD_DIRECTORY = './solutions/'; private $file; private ...
- Java通过SSLEngine与NIO实现HTTPS访问
Java使用NIO进行HTTPS协议访问的时候,离不开SSLContext和SSLEngine两个类.我们只需要在Connect操作.Connected操作.Read和Write操作中加入SSL相关的 ...
- Python - typing 模块 —— TypeVar 泛型
前言 typing 是在 python 3.5 才有的模块 前置学习 Python 类型提示:https://www.cnblogs.com/poloyy/p/15145380.html 常用类型提示 ...
- STM32—TIMx实现编码器四倍频
文章目录 一.储备知识 二.TIMx的编码器模式介绍 1.计数边沿设置 2.选择极性和使能 3.使能 4.计数方向 三.代码部分 一.储备知识 通过STM32的定时器编码器接口模式对编码器进行四倍频, ...
- 使用autopep8自动规范化python3代码
技术背景 编码规范是所有编程语言都有可能面临的问题,严格的按照编码规范来写代码,不仅能够提高代码的可读性,在后续程序的可维护性上面也有较大的帮助.尤其是在开源项目中,一个具备良好编程规范的项目往往能够 ...
- python初始化定义空变量-小记
python初始化定义空变量 数值 digital_value = 0 字符串 str_value = "" 列表 list_value = [] 字典 ditc_value = ...
- Nginx-出现-403-Forbidden
步骤一: 检查目录权限.权限不足的就加个权限吧. 例子:chmod -R 755 / var/www 步骤二: 打开nginx.conf 例子:vim /etc/nginx/nginx.conf 把 ...
- java线程池 面试题(精简)
什么是线程池? 线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理. 如果每个请求都创建一个线程去处理,那么服务器的资源很快就会被耗尽,使用线程池可以减少创建和销毁线 ...
- Mybatis框架及原理实例分析
摘要 本篇文章只是个人阅读mybatis源码总结的经验或者个人理解mybatis的基本轮廓,作为抛砖引玉的功能,希望对你有帮助,如果需要深入了解细节还需亲自去阅读源码. mybatis基本架构 myb ...