首页 > 数据库 >Redis7.x安装系列教程(二)主从部署&原理详解

Redis7.x安装系列教程(二)主从部署&原理详解

时间:2024-11-16 17:29:28浏览次数:1  
标签:主从复制 Redis Redis7 配置 redis 节点 详解 master 主从

Redis7.x安装系列教程(二)主从部署&原理详解

1、什么是主从复制

主从复制是指将一台Redis服务器的数据,复制到其他的Redis服务器上。前者称为主节点(master),后者是从节点(slave),数据的复制是单向的,只能是从主节点到从节点。每台Redis服务器未修改配置前都是主节点,一个主节点可以0~N个从节点,但一个从节点只能对应一个主节点。

1.1、主从复制的作用
  • 数据冗余: 主从复制实现数据的热备份,是持久化之外的一种数据冗余方式。
  • 故障恢复: 当主节点出现问题时,可以由从节点提供服务,实现快速故障恢复,是一种服务的冗余。
  • 负载均衡: 在主从复制基础上,配合读写分离,由主节点提供写服务,从节点提供读服务,分担服务器负载。适合读多写少的场景,多个从节点分担读负载,提高Redis服务器的并发量。
  • 高可用基石: 主从复制是哨兵和集群实施的基础。
1.2、整体架构图

1.3、主从复制的缺点
  • 复制延时,信号衰减
    • 所有的写操作都在master,再同步更新给slave,机器同步会有一定的延迟,
    • 当系统繁忙时,延迟问题会更严重,
    • 而且随着slave机器数量增加,延迟问题也会加重。
  • master挂了无法自动重选
    • 默认情况,master挂了不会从slave自动选出一个master,
    • 每次都要人工干预。(也就有哨兵、集群的出现)

2、环境准备&部署说明

环境准备参考《Redis7.x安装系列教程(一)单机部署》

本文以1主2从的方式来搭建,也为哨兵部署做前期准备。

主服务:192.168.242.41
从服务1:192.168.242.42
从服务2:192.168.242.43

部署步骤说明:

  • 以单机redis-os0克隆出redis-os1-master,redis-os2-slave1。
  • 修改slave1的配置,启动查看信息,确认主从配置是否生效。
  • 以slave1克隆出slave2,redis配置无需修改【克隆相关修改除外】。

3 、配置Redis

主节点不需要做任何修改,也就是单机部署时的配置;

从节点需要增加声明主节点信息,如果主节点有配置密码验证,需要加主节点授权信息。

每个从节点配置都一样

配置完启动即可。

# 主节点无密码验证,从节点配置
replicaof 192.168.242.41 6379

# 主节点有密码验证,从节点配置
replicaof 192.168.242.41 6379
masterauth 【主节点设置requirepas/s的值】

4、查看主从服务配置是否生效

有两种方式查看主从服务配置信息命令:

方式一:在客户端连接命令后直接带命令,

方式二:先连接再命令。

# 无密码模式,即protected-mode no 
redis-cli info replication 
# 有密码模式,即protected-mode yes
# 方式一:连接时带密码
redis-cli -a pass info replication 
# 方式二:先连接再用auth授权
redis-cli
auth pass
info replication 

主节点信息示例

从节点信息示例

5、补充说明单机部署下载地址确认

《Redis7.x安装系列教程(一)单机部署》

Redis官网下载地址:https://redis.io/downloads/,往下拉会看到 Redis Stack downloads会看到两个分支:Redis Stack 7.4 和Older Redis Stack Version。

点开 Older Redis Stack Version -> Redis downloads -> Install Redis from source 再往下拉会看 Latest stable release (最新稳定版本)的链接,也就是wget的链接。

再往下拉有其他版本,下载链接用鼠标右击获取,或者直接访问https://github.com/redis/redis-hashes/

6、我的公众号

敬请关注我的公众号:大象只为你,持续更新技术知识......

标签:主从复制,Redis,Redis7,配置,redis,节点,详解,master,主从
From: https://www.cnblogs.com/huangxiufen/p/18549585

相关文章

  • 【C++】深入理解自定义 list 容器中的 list_iterator:迭代器实现详解
    个人主页:起名字真南的CSDN博客个人专栏:【数据结构初阶】......
  • JUC---ThreadLocal原理详解
    什么是ThreadLocal?通常情况下,我们创建的变量是可以被任何一个线程访问并修改的。如果想实现每一个线程都有自己的专属本地变量该如何解决呢?JDK中自带的ThreadLocal类正是为了解决这样的问题。ThreadLocal类主要解决的就是让每个线程绑定自己的值,可以将ThreadLocal类形象的比喻......
  • PostgreSQL 配置文件详解
    配置文件pg_hba.conf详解[postgres@localhostdata]$vipg_hba.conf#TYPE DATABASE       USER           ADDRESS                METHOD#"local"isforUnixdomainsocketconnectionsonlylocal  all        ......
  • 【Linux进程篇1】认识冯·诺依曼体系结构(引出进程详解)
    ---------------------------------------------------------------------------------------------------------------------------------每日鸡汤:用这生命中的每一秒,给自己一个不后悔的未来。-------------------------------------------------------------------------......
  • Nuxt.js 应用中的 vite:extendConfig 事件钩子详解
    title:Nuxt.js应用中的vite:extendConfig事件钩子date:2024/11/16updated:2024/11/16author:cmdragonexcerpt:通过合理使用vite:extendConfig钩子,开发者可以极大地增强Nuxt3项目的灵活性和功能性,为不同的项目需求量身定制Vite配置。无论是添加插件、调整构建......
  • C#可空类型详解:定义、判断值与访问方法
    C#中的可空类型(NullableTypes)在C#中,值类型(如int、float、struct等)默认情况下不能表示“无值”或“未知”的状态。为了解决这个问题,C#引入了可空类型(NullableTypes),它允许值类型表示一个额外的状态:已赋值(HasValue)或未赋值(无值,即Null)。可空类型是通过在值类型后面加上问号(?......
  • 一文详解Java反射技术
    Java反射什么是Java反射以及引出反射的背景?Class类如何获取一个class的Class实例Class类的使用获取属性获取调用方法获取注解信息获取构造方法反射的应用什么是Java反射以及引出反射的背景?Java程序中的对象有两种类型,编译时类型和运行时类型,而很多时候编译......
  • Java反序列化-Commons Collections3利用链分析详解
    介绍CC3与CC1和CC6的主要区别在于,CC1和CC6依赖反射机制来执行Runtime.getRuntime().exec()等危险命令,而如果服务器将这些方法列入黑名单,这两种方式就会失效。相比之下,CC3通过类加载器动态加载恶意类来执行危险函数,绕过黑名单限制,从而达到命令执行的目的。公众号:T......
  • 数据结构(初阶5)---堆与堆排序(详解)
    堆与堆排序一.二叉树初探1).基本概念2).满二叉树和完全二叉树3.)二叉树的存储方式二.堆与堆排序1.堆(完全二叉树的特例)1).建堆(向下调整法)2).堆排序再将堆排序之前,我们先引入二叉树概念一.二叉树初探1).基本概念二叉树是一种数据结构,二叉树形如:1.其中A节......
  • LangChain的Prompt组件详解
    在大语言模型的应用中,Prompt设计是至关重要的。LangChain通过其强大的Prompt组件,提供了灵活且高效的Prompt管理和应用方式。本文将详细探讨LangChain中Prompt的基本概念、模板使用、高级设计以及与Few-ShotLearning的结合。##Prompt的基本概念和应用Prompt在自然语言处理任务......