超简单!Redis中的持久化策略汇总

举报
知识浅谈 发表于 2022/08/26 08:50:45 2022/08/26
【摘要】 超简单!Redis中的持久化策略汇总

在这里插入图片描述

🍁 作者:知识浅谈,CSDN博客专家,华为云云享专家,阿里云签约博主,InfoQ签约博主
📌 擅长领域:全栈工程师、爬虫、ACM算法
💒 公众号:知识浅谈
🔥 联系方式vx:zsqtcc

🤞Redis中的持久化策略方式汇总🤞

正菜来了⛳⛳⛳

🎈AOF方式

AOF:是以日志记录的形式记录数据的更新操作,这种方法的持久性更好,一致性更强,因为几乎能够保存redis 的每一步操作了。

🍮 AOF持久化策略

  • always:这个指的是每一次操作之后都是要持久化到aof文件中去的,所以就算是极端的情况下也最多丢失一条更新。

  • everysec:这个是每秒都会把aof缓冲中的数据持久化到aof文件中去的,所以最多也是丢失一秒的数据更改。

  • no:这个策略是不做任何操作,有操作系统决定什么时候去把aof缓存持久化到aod文件,这个放生异常的时候相比于上边的两个丢失的数据相对较多。

🍮AOF重写

默认redis是RDB的形式,如果想要使用AOF的形式,
appendonly yes 这个是开启aof持久化的命令。
本来aof持久化的时候是需要把对redis进行修改的每一个操作都写到文件中去的,但是因为aof存储的命令较多的时候,需要对aof文件进行重写,这个重写是指的是bgrewriteaof,创建一个子线程根据当前内存中redis的数据重新写一份aof文件,原来的aof文件就丢弃了。

🎈RDB方式

RDB:是以镜像的方式记录某个时刻redis中的每个数据,可以通过bgsave命令,使用一个子线程去创建一个某个时刻的redis中的数据的镜像,当bgsave命令的执行的时候redis中的数据是read-only状态,如果主线程要修改的时候发生缺页中断,会在其他空间先写入数据,等持久化之后再把刚才的数据进行更新。

🎈RDB+AOF:是两种方式的混合方式

在RDB持久化之后使用aof进行记录来保证尽量做到数据的一致性,在还原数据的时候,先用rdb还原基本的数据,再使用aof中的日志去redis中进行操作。

🎈性能比较:

RDB:还原数据快,占用空间小,但是完整性低。

AOF:完整性高,但是占用空间相比于RDB的形式较大,还原数据的时间较长。

🍚总结

以上就是Redis持久化的方式的使用策略和优劣势。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。