Redis | 主从模式

Redis(十):主从模式 上一篇介绍了 Redis 应对并发问题的方案。这节开始介绍 Redis 的主从模式。由于 Redis 是基于内存的,一旦发生崩溃就会导致数据的丢失,所以单个 Redis 实例并不能保证数据的可靠性。为了应对高可靠性要求的场景,可以使用多个 Redis 实例作为某个节点的备份实例,从而实现了主从架构。从节点可以作为主节点的备份节点,当主节点崩溃时,由于各个节点间的数据是相同的,还能够切换节点来保证整个集群的可靠性。 阅读详情

Redis | 主从模式

1. 简介

Redis主从模式(Replication)是Redis提供的一种数据备份和高可用性解决方案。通过主从复制,可以将一个Redis服务器的数据复制到其他多个从服务器,从而实现数据的备份和读写分离,提高系统的性能和可用性。

主从模式的工作原理如下:

  1. 主节点(Master):主节点是主要的数据写入节点,负责接收客户端的写入操作(写操作包括SET、INCR等),并将写入的数据同步到从节点。
  2. 从节点(Slave):从节点负责复制主节点的数据。它接收主节点发送过来的写操作命令,并执行相同的写操作,以保持数据的一致性。
  3. 数据同步:主节点会将写操作的命令发送给所有连接的从节点,从节点执行相同的写操作,从而保持数据同步。
  4. 只读操作:客户端的只读操作(例如GET等)可以由从节点处理,从而减轻主节点的压力,提高读取性能。

主从模式的优势在于数据备份和读写分离:

  • 数据备份:通过复制数据到从节点,即使主节点发生故障,数据仍然可用,并且可以通过从节点恢复数据。
  • 读写分离:通过从节点处理只读操作,可以减轻主节点的负担,提高读取性能。

2. 配置

2.1. 配置主节点

注意:不配置默认也是主节点

启动参数方式

在主节点的redis-server执行程序启动时添加--replicaof no one启动参数,表示当前节点为主节点。

redis-server --replicaof no one

配置文件方式

在主节点的redis.conf文件中设置replicaof选项为no one,表示当前节点为主节点。

replicaof no one

2.2. 配置从节点

启动参数方式

在主节点的redis-server执行程序启动时添加--replicaof <master_ip> <master_port>启动参数,设置当前节点的主节点。

如果主节点有密码还需要添加--masterauth <master_password>。

配置文件方式

在从节点的redis.conf文件中设置replicaof选项为主节点的地址和端口。

replicaof <master_ip> <master_port>

如果主节点有密码还需要添加masterauth在redis.conf

masterauth <master_password>

3. 演示

docker-compose.yaml

version: "3.8"
services:
  redis1:
    container_name: redis1
    image: redis:7.0
    command:
      - redis-server
      - --requirepass 123456
      - --bind * -::*
  redis2:
    container_name: redis2
    image: redis:7.0
    command:
      - redis-server
      - --requirepass 123456
      - --bind * -::*
      - --masterauth 123456
      - --replicaof redis1 6379
    depends_on:
      - redis1
  redis3:
    container_name: redis3
    image: redis:7.0
    command:
      - redis-server
      - --requirepass 123456
      - --bind * -::*
      - --masterauth 123456
      - --replicaof redis1 6379
    depends_on:
      - redis1
  1. 进入窗口控制台:docker exec -it redis1 bash

  2. 控制台内部操作:

    root@1c0cccc0d756:/data# redis-cli
    127.0.0.1:6379> AUTH 123456
    OK
    127.0.0.1:6379> INFO replication
    # Replication
    role:master
    connected_slaves:2
    slave0:ip=172.18.0.3,port=6379,state=online,offset=1694,lag=0
    slave1:ip=172.18.0.4,port=6379,state=online,offset=1694,lag=0
    master_failover_state:no-failover
    master_replid:0158f9bf36c9db3b95829e29139fa71b1ecd2b84
    master_replid2:0000000000000000000000000000000000000000
    master_repl_offset:1694
    second_repl_offset:-1
    repl_backlog_active:1
    repl_backlog_size:1048576
    repl_backlog_first_byte_offset:1
    repl_backlog_histlen:1694
    

4. 注意

主从复制是异步的,从节点可能会有一定的延迟。如果主节点故障,可以将一个从节点提升为主节点,继续提供服务。但在进行主从切换时,需要考虑数据一致性和可能丢失的写操作。

Redis 的主从模式 摘要 Redis主从模式通过多服务器部署提升可用性和并发量,指定一台主节点负责写操作,其余从节点处理读操作并同步主节点数据。主从同步存在网络延迟,可通过repl-disable-tcp-nodelay配置调整。常见拓扑结构包括一主一从、星型结构和树形结构,各有优缺点:一主一从简单但写压力集中;星型结构同步快但带宽消耗大;树形结构节省带宽但同步延迟较长。需注意主节点AOF配置可能影响数据恢复。 阅读详情

相关推荐

深入学习 Redis - 主从结构配置、流程、底层原理(全网最详细)

单点问题可用性:如果这个机器挂了,意味着服务就中断了.性能:支持的并发量也是比较有限的.因此引入分布式系统,主要也是为了解决上述的单点问题~ 分布式系统中,往往需要多个服务器来部署 redis 服务,从而构成redis 集群,此时就可以让这个集群给整个分布式系统中的其他服务,提供更稳定 / 更高效的数据存储功能.本章主要来讲一下 redis 部署方式中的主从模式~

CYK_byte的博客 1万+

Redis-主从模式

Redis的主从节点之间的关系,以及复制方式

tq02的博客 3936

一文读懂Redis之主从模式搭建

本文详细介绍了Redis主从模式的搭建过程,包括Master和Slave节点的安装配置、服务启动及数据同步验证。主要内容涵盖:1)Redis主从模式的作用,提高数据可靠性并分担读写压力;2)环境准备,包括服务器IP、系统版本和依赖安装;3)具体搭建步骤,从目录创建、安装包下载到配置文件修改;4)主从服务启动和状态检查;5)数据同步验证。通过该方案,可有效实现Redis数据冗余备份和读写分离,增强服务可用性。

野熊佩骑的博客 1935

Redis主从模式

主从复制:主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master主服务器以写为主,Slave从服务器以读为主。

架构沉思录的博客 5122

Redis主从模式配置实践教程

htmltable {th, td {th {pre {简介:Redis是一个高性能的键值数据库,常用于缓存和消息队列。为了确保数据的高可用性和持久性,在分布式系统中采用主从复制模式。文章详细介绍了如何通过修改配置文件来实现Redis的主从模式,包括主节点和从节点的配置,复制过程,故障转移,性能优化以及安全策略的设置。下载提供的配置文件压缩包,按实际需要调整配置后,即可搭建本地环境的Redis主从模式。

weixin_42598278的博客 762

给麒麟KylinOS服务器加把锁:手把手配置符合等保要求的密码强度策略

本文详细介绍了如何在麒麟KylinOS服务器上配置符合等保要求的密码强度策略,包括pwquality.conf和login.defs的核心参数设置、等保合规的进阶配置技巧以及企业环境中的平衡艺术。通过实战案例和测试方法,帮助管理员构建坚固的密码防线,确保系统安全。

weixin_33749242的博客 418

Redis(十四) 主从模式

redis主从复制

不能再留遗憾了的博客 1447

2025.06.25【微生物】|Emu工具安装与使用详解:全长16S扩增子微生物丰度分析

Emu是一款基于贝叶斯方法的微生物多样性分析工具,专为处理高错误率的长读长16S/18S扩增子数据优化。本文详细介绍了Emu的安装与使用方法:1)通过conda创建独立环境并安装Emu;2)提供SILVA等预构建数据库的下载指南,并说明自定义数据库的构建方法;3)演示单样本和多样本分析流程,解读关键输出文件;4)介绍丰度表合并、分类等级汇总等实用功能扩展;5)建议后续分析方向。文章还附有官方GitHub链接和相关文献资源,为微生物群落结构研究提供了一套完整的分析解决方案。

1255

Redis——集群之主从模式

超详细讲解Redis中的集群主从模式,以及对其主从环境的搭建进行一步步讲解,了解其基本原理,以及在我们开发中的优缺点。

一心同学的博客 2017

【pprof】简要学习教程

基本介绍 pprof 是在做性能优化前的性能分析工具。 安装: go get -u github.com/google/pprof 分析工具 go tool pprof 是命令行指令,用于分析 Profiling 数据,源数据可以是 http 地址,也可以是已经 dump 下当 profile 文件;查看模式可以命令行交互模式,也可以是浏览器模式(-http 参数)。 两种应用 服务型应用 _ "net/http/pprof" 包,专用于采集 web 服务 运行数据的分析。即在运行的服务中通过 API .

码农印象 883

VScode远程连接开发嵌入式开发板

VScode远程连接开发调试嵌入式开发板

qq_53221728的博客 5891

Redis 主从模式

在若干个 Redis 服务器节点中,有的是主节点,有的是从节点;每个从节点只能有一个主节点,一个主节点可以有多个从节点;从节点就是主节点的副本,从节点要同步主节点上的所有数据,同时,当主节点对数据有任何的修改,也会同步到从节点上,从节点不允许修改数据;配置了主从模式后,比较有效的解决了可用性问题,一台服务器挂了,还有另外的服务器可以支撑服务,通过负载均衡也可以有效的处理高并发问题;

2201_75456895的博客 2070

银河麒麟V10+QT6.0中文输入法环境搭建全攻略(附镜像加速技巧)

本文提供了在银河麒麟V10操作系统上为QT6.0搭建中文输入法环境的完整实战指南。文章详细介绍了从系统准备、镜像源优化、QT6安装器获取与加速安装,到编译Fcitx5输入法插件依赖库、深度配置环境变量与项目的全流程。重点分享了使用国内镜像源加速安装的技巧,解决了国产化开发中QT应用无法输入中文的常见难题,旨在帮助开发者快速构建稳定高效的开发环境。

weixin_29204749的博客 392

Redis 的主从模式。

Redis 主从模式是一种数据复制机制,通过将一个 Redis 实例(主节点)的数据复制到多个 Redis 实例(从节点)实现高可用性和读写分离。主节点负责处理写操作,从节点负责处理读操作,从而分担主节点的压力。Redis 主从模式是一种数据复制机制,通过将一个 Redis 实例(主节点)的数据复制到多个 Redis 实例(从节点)实现高可用性和读写分离。主节点负责处理写操作,从节点负责处理读操作,从而分担主节点的压力。主节点默认无需额外配置,只需确保。主节点默认无需额外配置,只需确保。

lTb_oz8m的博客 417

基于Simulink的加速度计振动分析:单自由度质量-弹簧-阻尼系统

摘要:基于Simulink的加速度计单自由度振动分析 本文研究了加速度计的单自由度(SDOF)质量-弹簧-阻尼系统模型,通过MATLAB/Simulink平台建立了完整的振动分析仿真系统。文章详细阐述了理论建模过程,推导了系统运动微分方程和传递函数,并提供了Simulink模型搭建的具体步骤和MATLAB实现代码。研究通过正弦扫频、随机振动和冲击响应三种典型输入信号,分析了系统的幅频特性、相频特性及时域响应,验证了加速度计的工作机理。仿真结果表明,该方法能有效模拟加速度计在不同激励条件下的动态特性,为传感器

AI的内部世界的博客 162

【AI智能体】Dify 搭建个人专属简历美化助手操作详解

Dify 搭建个人专属简历诊断助手实战操作详解

congge 4379

Redis--主从模式

在Redis中,只有主节点拥有写操作的权限,从节点只能进行读操作,而且还要不停从主节点进行复制来保证自己的数据始终处于最新状态。这样的做的原因一方面是因为一般的业务主要是以读操作为主,另一方面是为了避免从节点修改数据导致主从数据不一致的问题。修改主从结构的三种方式:1.在配置文件中添加salveof{masterHost}{masterPort},这个操作在Redis重启后生效,而且由于修改的是配置文件,所以是长久生效的。

wuyunhang123456的博客 602

ORB-SLAM2算法4之KITTI开源数据集运行ORB-SLAM2生成轨迹并用evo工具评估轨迹

ORB-SLAM2算法1 已成功编译安装ORB-SLAM2到本地,本篇目的是用KITTI开源数据来运行ORB-SLAM2,并生成轨迹,最后用evo评估工具来评估ORB-SLAM2生成的轨迹和真值轨迹。

重点记录机器人和自动驾驶相关领域的技术,尤其是计算机视觉,视觉SLAM等,不仅有前言文献或必备算法的学习,也会有实际应用的点滴经验 2325

Docker搭建Redis主从模式

文章目录Docker搭建Redis主从Docker安装Redis主从模式(简易模式)特点:工作机制:搭建:redis-master节点:redis-slave-1节点redis-slave-2节点验证主从模式 Docker搭建Redis主从 Docker安装Redis 搜索镜像:docker search redis 拉取镜像:docker pull redis 启动容器(redis-master节点):docker run -p 16379:6379 --name redis-master -

刘先森 4895

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Redis集群搭建——主从模式

Redis集群搭建——主从模式前言一、什么是主从模式?二、主从模式集群的搭建案例总结 前言 一般情况下,为了减轻数据库的访问压力,我们会把热点数据保存在内存中而不是直接从后端数据库中读取。Redis虽然是一个极其优秀的非关系型数据库,但是在大型网站应用,热点数据的并发访问量达到百万千万是很正常的,这个时候单个redis就不能够保证数据量的访问和存储。这个时候我们就可以搭建redis集群,可以保证数据的分散存储与数据的一致性,实现redis的高可用,发生故障时保证程序的正常运行与数据的保存。 Redis有几

qq_52861718的博客 1645

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Redis集群之主从模式

Redis的定位还是分布式缓存,关于分布式的特点和挑战这里不再介绍。 一、 Redis主从模式的必要性 备份数据:当一个节点损坏时,数据因为有备份,可以方便恢复。 负载均衡:避免所有客户端都访问一个节点,有了主从模式后,查询操作就可以通过查询从节点来完成。 二、Redis主从模式的特点: 一个Master可以有多个Slaves 默认配置下,master节点可以进行读和写,slave节点只...

xiaoxiaoyusheng2012的专栏 4302

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

redis主从模式

作用:全量同步后,主节点每接收一个命令后,不仅会将命令发送给从节点,还会将命令存入此缓存区,用于再从节点与主节点断开连接后,从节点恢复连接可以通过从节点的复制偏移量,在此缓存区判断是否部分复制。作用:主节点再全量同步RDB时,之后写入的数据会存入此缓冲区,RDB同步完,发送此缓存区的数据给从节点进行同步。主节点将命令异步发送给从节点(主节点不会等从节点同命令),从节点将命令同步。数量:主节点对每一个从节点都会创建一个此缓存区。数量:主节点只有一个公共的缓存区。后面格式优点乱,将就看吧,内容都没错。

m0_61652338的博客 849
上一篇: Go context
下一篇: Redis | 哨兵模式
yimtcode
博客等级 码龄6年 205粉丝 140原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yimtcode

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值