使用DockerCompose部署Redis分片集群——整合SpringBoot

article/2025/9/30 19:58:11

今天来记录一下使用DockerCompose部署Redis分片集群的过程,前面写了几篇关于redis的博客了,这里就不再过多介绍了,直接上配置就好了

version: "3.0"services:redisServer1:image: redis:6.2.4container_name: redis_server1volumes:- /home/redis/redis1/data:/data- /home/redis/redis1/logs:/logs- ./redis.conf:/redis.confcommand:# 服务启动/bin/bash -c "redis-server /redis.conf --port 7001"#ports:#    - 7001:7001network_mode: hostredisServer2:image: redis:6.2.4container_name: redis_server2volumes:- /home/redis/redis2/data:/data- /home/redis/redis2/logs:/logs- ./redis.conf:/redis.confcommand:# 服务启动/bin/bash -c "redis-server /redis.conf --port 7002"#ports:#    - 7001:7001network_mode: hostredisServer3:image: redis:6.2.4container_name: redis_server3volumes:- /home/redis/redis3/data:/data- /home/redis/redis3/logs:/logs- ./redis.conf:/redis.confcommand:# 服务启动/bin/bash -c "redis-server /redis.conf --port 7003"#/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"#ports:#    - 7001:7001network_mode: hostredisServer4:image: redis:6.2.4container_name: redis_server4volumes:- /home/redis/redis4/data:/data- /home/redis/redis4/logs:/logs- ./redis.conf:/redis.confcommand:# 服务启动/bin/bash -c "redis-server /redis.conf --port 7004"#/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"#ports:#    - 7001:7001network_mode: hostredisServer5:image: redis:6.2.4container_name: redis_server5volumes:- /home/redis/redis5/data:/data- /home/redis/redis5/logs:/logs- ./redis.conf:/redis.confcommand:# 服务启动/bin/bash -c "redis-server /redis.conf --port 7005"#/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"#ports:#    - 7001:7001network_mode: hostredisServer6:image: redis:6.2.4container_name: redis_server6volumes:- /home/redis/redis6/data:/data- /home/redis/redis6/logs:/logs- ./redis.conf:/redis.confcommand:# 服务启动/bin/bash -c "redis-server /redis.conf --port 7006"#/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"#ports:#    - 7001:7001network_mode: host

其中有一个redis.config配置文件。

下载路径

https://gitee.com/840312696/redis-demo/blob/%E5%88%86%E7%89%87%E9%9B%86%E7%BE%A4/%E6%96%87%E4%BB%B6/redis.conf

使用docker-composer up -d启动之后 ,每个redis都是相互独立的 ,我们需要把他们加入集群

需要进入到其中任意一个docker容器当中。

查看容器

docker ps

进入到容器当中

docker exec -it redis_server1 /bin/bash

建立集群

redis-cli --cluster create --cluster-replicas 1 192.168.21.69:7001 192.168.21.69:7002 192.168.21.69:7003 192.168.21.69:7004 192.168.21.69:7005 192.168.21.69:7006

 需要确认主从配置服务,输入yes

这就搞定了

查看集群状态

redis-cli -p 7001 cluster nodes
 

 测试

测试代码地址如下:

https://gitee.com/840312696/redis-demo/tree/%E5%88%86%E7%89%87%E9%9B%86%E7%BE%A4/

向redis中插入值

从redis中查询值

 打印日志 

从日志看集群已经实现了分部署,并且是读写分离的


http://chatgpt.dhexx.cn/article/qD3gKaO5.shtml

相关文章

redis之分片集群

写在前面 当redis单实例存储的数据过多时,比如说20G,就会出现因为生成RDB快照较长时间比如500ms阻塞主线程的问题,在这一段时间里,因为主线程被阻塞,所以Redis实例无法正常的对外提供服务,出现这个问题的原…

Redis分片集群(详解+图)

目录 分片集群特征: 散列插槽 集群伸缩 创建新的redis实例 添加新节点到redis 转移插槽 故障转移 自动故障转移 手动故障转移 RedisTemplate访问分片集群 主从和哨兵可以解决高可用、高并发读的问题。但是依然有两个问题没有解决: 海量数据存储问…

redis分片_Redis分片

redis分片 本文是我们学院课程的一部分,标题为Redis NoSQL键值存储 。 这是Redis的速成课程。 您将学习如何安装Redis和启动服务器。 此外,您还会在Redis命令行上乱七八糟。 接下来是更高级的主题,例如复制,分片和集群&#xff0…

(分布式缓存)Redis分片集群

对应的教程视频: 高级篇Day3-04-Redis分片集群_哔哩哔哩_bilibili 一.搭建分片集群 1.集群结构 分片集群需要的节点数量较多,这里我们搭建一个最小的分片集群,包含3个master节点,每个master包含一个slave节点,结构如下&#xff…

Docker中搭建redis分片集群,搭建redis哨兵结构,实现springboot中对redis分片集群、哨兵结构的访问,Redis缓存雪崩、缓存击穿处理(非关系型数据库技术课程 第十二周)

文章目录 一、要求:二、知识总结缓存雪崩解决方案 docker中redis分片集群搭建配置好配置文件redis-6380.confredis-6381.confredis-6382.confredis-6383.confredis-6384.confredis-6385.conf 将conf_cluster文件夹移动到对应位置docker中运行对应的redis容器docker中…

Redis分片入门案例

说明 由多台redis共同处理用户的业务数据,实现了redis内存数据的动态扩容,称之为分片机制。 特点 多态redis当作一台使用 分片搭建 1、在redis工作目录下创建工作目录 [rootlocalhost redis]# mkdir shards2、把redis配置文件复制到指定目录下 3、…

分布式缓存-Redis分片集群

一、分片集群结构 主从和哨兵可以解决高可用、高并发读的问题,但是依然有两个问题没有解决: 海量数据存储问题高并发写的问题 使用分片集群可以解决上述问题,分片集群特征: 集群中有多个 master,每个 master 保存不…

SpringBoot整合Redis分片

1 编辑分片配置文件 #redis.host192.168.126.129 #redis.port6379 redis.nodes192.168.126.129:6379,192.168.126.129:6380,192.168.126.129:63812 编辑配置类实现redis整合 Configuration //我是一个配置类 一般都会与Bean联用 PropertySource("classpath:/properti…

Redis搭建分片集群

一、什么是Redis分片集群 1、概念 Redis分片集群是用于将Redis的数据分布在多个Redis节点上的分布式系统。通过分片集群,可以将数据分成多个部分,并将每个部分存储在不同的节点上,以便实现Redis的高可用性和高性能。 2、Redis分片集群原理…

Docker下搭建Redis分片集群

分片集群结构 同一台虚拟机中开启6个redis实例,模拟分片集群 IP PORT角色192.168.19.1287001master192.168.19.1287002master192.168.19.1287003master192.168.19.1288001slave192.168.19.1288002slave192.168.19.1288003slave 搭建Redis分片集群 创建实例目录 …

redis分片集群

目录 分片集群结构搭建分片集群散列插槽集群伸缩故障转移 分片集群结构 主从和哨兵可以解决高可用、高并发读的问题。但是依然有两个问题没有解决: 1.海量数据存储问题 2.高并发写的问题使用分片集群可以解决上述问题,分片集群特征: 1.集群…

Redis分区/分片详解

分区/分片详解 分区是分割数据到多个Redis实例的处理过程,因此每个实例只保存key的一个子集。 如果只使用一个redis实例时,其中保存了服务器中全部的缓存数据,这样会有很大风险,如果单台redis服务宕机了将会影响到整个服务。解决的…

Redis(七)--分片技术详解

文章目录 介绍Redis集群的数据分布算法:哈希槽算法集群的请求重定向Redis集群中节点的通信机制:goosip协议介绍原理通信过程优缺点goosip协议的常见类型 集群的扩容与收缩扩容收缩 集群的故障检测与故障恢复机制故障检测故障恢复 介绍 Redis分片&#x…

Redis集群系列五 —— 分区/片概念

什么是分区 分区就是将所存储的数据按照一定的规则存储在不同的存储服务或介质上,通过降低单服务或介质的数据量级来提升数据处理能力,从而达到拥有数据处理横向扩容的能力的目的。 还可简单的理解为分区就是将数据拆分到多个 Redis 实例的过程&#xf…

redis分区(分片)原理

redis相关文章 ----redis原理概述 -----redis集群方案 ----redis分区(分片)原理 ----Redis实现分布式锁 ----redis缓存穿透、雪崩和解决方案 分区的概念 分区是分割数据到多个Redis实例的处理过程,因此每个实例只保存key的一个子集如果只使…

调和级数近似求和公式推导(转载)

原文链接: https://blog.csdn.net/ezoiHQM/article/details/82961266?utm_mediumdistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_sourcedistribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonec…

级数求和.

题目描述 输入格式 一个正整数 k。 输出格式 一个正整数 n。 输入样例 1输出样例 2#include<iostream> using namespace std; int main() {int k;cin>>k;double S0,tmp;for(int i1;i<99999;i){tmp1.0/i;SStmp;if(S>k){cout<<i<<endl;break…

高等数学——级数

目录 一&#xff0c;级数 二&#xff0c;函数项级数的一致收敛性 一&#xff0c;级数 二&#xff0c;函数项级数的一致收敛性