Redis持久化策略分析

2021.03.05,中原银行春招面试到这道题,回答的不够完整,特此总结一下。

Redis持久化策略分析

Redis的高性能是由于其把数据储存到了内存中,为了使Redis中的数据在重启之后不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化,Redis共有两种持久化策略:RDB、AOF

一、RDB

RDB是Redis默认的持久化方式,是通过快照来完成的,当符合一定条件时,Redis会自动将内存中的数据进行快照,并持久化到硬盘。
核心功能函数是rdbSave(将内存中的数据保存到硬盘中的rdb文件)、rdbLoad(将硬盘中的数据读取到内存中);

二、AOF

默认情况下Redis没有开启AOF,需要我们手动开启;开启AOF之后没执行一条会更改Redis中的数据的命令,Redis就会将该命令写入到硬盘中的AOF文件。
核心功能函数是flushAppendOnlyFile(负责往AOF文件中写入命令)

三、比较
  • AOF比RDB更新频率高,优先使用AOF还原数据
  • AOF比RDB安全也更大,因为在执行完Redis命令后,进行RDB快照之前,服务器宕机,那么最后一次的数据就会造成丢失,而AOF不会存在这种问题
  • RDB性能比AOF高
四、用法

通常我们在项目中会同时使用RDB和AOF,在Redis启动之后,会首先判断是否存在AOF文件,存在加载AOF,完成数据恢复,不存在去加载RDB文件。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值