0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Redis使用重要的两个机制:Reids持久化和主从复制

马哥Linux运维 来源:马哥Linux运维 2024-12-18 10:33 次阅读

今天这篇文章,我们一起了解 Redis 使用中非常重要的两个机制:Reids 持久化和主从复制。

我们都知道Redis是一个内存数据库,在学习主从同步之前,我们首先要想到 Redis 是如何做数据持久化的,也就是说要先存储到磁盘上嘛,这样才方便主从之间的数据同步。

此外,因为Redis 主从复制的原理也是后端面试必考知识点,所以先送上一份福利【77道redis高频面试题汇总(带答案)】,面试用到率85%!

部分内容展示:

2062e884-bb90-11ef-8732-92fbcf53809c.png

207cad5a-bb90-11ef-8732-92fbcf53809c.png

回到正题,首先一起了解一下其中一个非常重要的内容:Redis的持久化机制。

什么是Redis持久化?

Redis作为一个键值对内存数据库(NoSQL),数据都存储在内存当中,在处理客户端请求时,所有操作都在内存当中进行,如下所示:

20ca6d7e-bb90-11ef-8732-92fbcf53809c.jpg

这样做有什么问题呢?

其实,只要稍微有点计算机基础知识的人都知道,存储在内存当中的数据,只要服务器关机(各种原因引起的),内存中的数据就会消失了,不仅服务器关机会造成数据消失,Redis服务器守护进程退出,内存中的数据也一样会消失。

20defc1c-bb90-11ef-8732-92fbcf53809c.jpg

对于只把Redis当缓存来用的项目来说,数据消失或许问题不大,重新从数据源把数据加载进来就可以了,但如果直接把用户提交的业务数据存储在Redis当中,把Redis作为数据库来使用,在其放存储重要业务数据,那么Redis的内存数据丢失所造成的影响也许是毁灭性。 为了避免内存中数据丢失,Redis提供了对持久化的支持,我们可以选择不同的方式将数据从内存中保存到硬盘当中,使数据可以持久化保存。

20f5184e-bb90-11ef-8732-92fbcf53809c.jpg

Redis的主从复制

什么是主从复制

持久化保证了即使redis服务重启也不会丢失数据,因为redis服务重启后将硬盘上持久化的数据恢复到内存中,但是当redis服务器的硬盘损坏了,可能导致数据丢失,不过通过redis的主从复制机制,就可以避免这种单点故障。

Redis 主从复制这套架构,一般我们生产上是不用的,不过这个确实一个难点和重点,面试官基本上都会问到。整明白了,对于你理解其他各种关于数据同步方案或者中间件的原理思想都是很受用的。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Redis
    +关注

    关注

    0

    文章

    374

    浏览量

    10870

原文标题:入门到入土【Redis】持久化与主从复制(原理+实战)

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Redis缓存与Memcached的比较

    关键特性和差异: 1. 数据存储 Redis: Redis是一开源的键值存储,支持多种数据结构,如字符串、列表、集合、有序集合、散列、位图、超日志和地理空间索引。 它支持持久
    的头像 发表于 12-18 09:33 57次阅读

    配置MySQL主从复制和读写分离

    配置MySQL主从复制和读写分离
    的头像 发表于 10-23 11:44 397次阅读
    配置MySQL<b class='flag-5'>主从复制</b>和读写分离

    单相电机两个绕组都在定子上吗

    单相电机的两个绕组,即起动线圈(或称为辅助绕组、副绕组)和运行线圈(或称为主绕组),都位于定子上 。这两个绕组在电机中起着关键作用,共同协作以产生旋转磁场,从而使电机能够运转。 单相电机通常由一
    的头像 发表于 09-03 15:10 703次阅读

    ad如何设置两个元器件的距离

    在Altium Designer(简称AD)中设置两个元器件之间的距离,主要是通过设置元器件间的安全间距(Clearance)规则来实现的。这个规则定义了元器件之间、元器件与走线之间以及其他设计元素
    的头像 发表于 09-02 15:31 6293次阅读

    触发器的两个稳定状态分别是什么

    触发器作为数字电路中的基本逻辑单元,具有两个稳定状态,这两个状态通常用于表示二进制数码中的0和1。
    的头像 发表于 08-12 11:01 964次阅读

    双稳态电路的两个稳定状态是什么

    双稳态电路是一种具有两个稳定状态的电子电路,广泛应用于数字电路、通信系统、存储器等领域。 双稳态电路的基本概念 双稳态电路是一种具有两个稳定状态的电路,即在没有外部输入信号的情况下,电路可以保持在
    的头像 发表于 08-11 15:00 1274次阅读

    双稳态触发器的两个基本性质是什么

    双稳态触发器(Bistable Trigger)是一种具有两个稳定状态的逻辑电路,广泛应用于数字电路设计中。它具有两个基本性质:记忆性和切换性。 一、双稳态触发器的基本概念 1.1 双稳态触发器
    的头像 发表于 08-11 10:08 650次阅读

    主从触发器都是下降沿触发吗

    主从触发器(Master-Slave Flip-Flop)是一种常见的数字逻辑电路,用于存储一位二进制信息。主从触发器通常由两个触发器组成,一作为主触发器,另一
    的头像 发表于 08-11 09:20 708次阅读

    两个PLC之间如何交互信号

    在工业自动系统中,PLC(Programmable Logic Controller,可编程逻辑控制器)是核心的控制设备。在许多复杂的应用场景中,需要两个或多个PLC之间进行信号交互,以实现更高
    的头像 发表于 06-14 16:57 4183次阅读

    两个铜片可以形成原电池吗

    两个铜片本身不能形成原电池,因为原电池的工作原理依赖于两个不同电位的电极材料之间的氧化还原反应。
    的头像 发表于 05-21 16:23 920次阅读

    GaussDB(for Redis) 特性揭秘:多租户管理

    级鉴权能力,即可约束每个账号可访问的数据库(DB)范围,避免误操作其他租户数据。该特性可以帮助企业在共享 Redis 实例的情况下,保护不同租户的数据安全,为企业的开发和管理提供便利。 哪些用户需要使用多租户功能? 多租户是数据库用户刚需的一功能。例如,企业中有
    的头像 发表于 03-28 22:06 739次阅读
    GaussDB(for <b class='flag-5'>Redis</b>) 特性揭秘:多租户管理

    arcgis中如何关联两个属性表

    在ArcGIS中,关联两个属性表是一重要的操作,可以通过此操作将两个表中的数据关联起来,以便进行分析和查询。下面是详细介绍如何在ArcGIS中实现属性表的关联。 首先,我们需要明确
    的头像 发表于 02-25 11:01 4149次阅读

    两个电位器地控制一变频器,如何接线?

    两个电位器地控制一变频器,如何接线? 接线方式如下: 1. 首先,明确需要使用的电器设备。在这个场景中,我们需要两个电位器(即可变电阻器)和一
    的头像 发表于 02-05 10:13 5149次阅读

    两个机器的时钟怎么同步?

    两个机器的时钟怎么同步? 在现代社会中,时间同步对于各种科学研究、工业生产和通信技术都具有重要意义。在许多应用程序中,如分布式系统、计算机网络和数据同步等领域,为了确保数据的一致性和准确性,需要确保
    的头像 发表于 01-16 14:26 1583次阅读

    如何给C语言中的函数定义两个不同的名字?

    最近有位哥问我,如何给C语言中的函数定义两个不同的名字?就是这两个名字都是指向同一函数,同一地址,而且两个名字都可以当做函数来用的那种。
    的头像 发表于 12-19 16:21 813次阅读