redis混合持久化的配置

redis4.0之后,持久化方式多了一种,叫混合持久化,我在安装配置过程中费了一些周折,以为没有配置成功,后来看了一些持久化的原理才弄明白,记录如下:

一、参考

1、redis源码分析(6)——aof rewrite https://blog.csdn.net/chosen0ne/article/details/44461497

2、REDIS AOF的实现https://blog.csdn.net/wudongxu/article/details/7053304

二、混合持久化需要在配置文件中配置两个地方。

1、appendonly yes

2、aof-use-rdb-preamble yes

原因:混合持久化是依赖aof文件的。当满足条件时aof会进行重写(Rewrite),可以避免aof文件过大的问题。如果aof-use-rdb-preamble yes,重写的时候,aof文件内容格式是[RDB file][AOF tail] 明显特征是aof文件的开头为:REDIS。这个是RDB文件的开头。一般默认重写时机为auto-aof-rewrite-percentage 100 ;auto-aof-rewrite-min-size 64mb。即文件达到64m时进行重写,然后如果文件大小增长了一倍,也会触发重写。

测试

1、往redis中插入了6万条数据,aof大小为59m

aof 开头文件为

2、再插入1万条数据

aof 文件没有变大 反而变成了53m 接近dump.rdb 的大小

此时查看aof文件 以REDIS开头

3、如果不开启混合持久化,删除aof和rdb,重启后插入相同的7万条数据,

aof的数据要比dump.rdb更大一些。

此时aof的开头如下

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值