redis持久化的方法及对比

Posted 郁冬

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis持久化的方法及对比相关的知识,希望对你有一定的参考价值。

1、持久化的作用

redis所有的数据保持在内存中,对数据的更新将异步的保存到磁盘上。

两种方式:

 

2、RDB

 2.1、概念

 

2.2、触发机制

 2.2.1、save 同步

 

因为是同步命令,数据量大的话可能会造成阻塞

文件策略:如果存在老的RDB文件,会用新的替换老的

 

2.2.2、bgsave 异步

 

需要linux的fork,很快,不过也有可能会阻塞掉主进程

文件策略同上

2.2.3、自动

 

 

推荐配置:

//满足任一条件就执行
save 900 1 save 300 10 save 60 10000 //文件名加入端口号,以防多redis时覆盖 dbfilename dump-${port}.rdb //写入目录另外分盘或者是大一点的目录,而不是当前目录 dir /bigdispath //写入错误时是否停止写入 stop-writes-on-bgsave-error yes //是否压缩 rdbcompression yes //是否采用校验模式 rdbchecksum yes

 

2.3、演示

设置60秒钟改变5次就自动保存

  

 查看日志,自动保存

 

2.4、问题

耗时耗性能

 

容易丢数据,不可控

 

3、AOF

 3.1、三种策略

always    每次改变数据都存

everysec  每秒存一次

no 操作系统决定

对比

一般使用第二种

 AOF重写

自动优化命令、过滤过期数据

 AOF重写流程

 

 AOF重写作用

减少硬盘占有量,加快恢复速度

实现

bgrewriteaof  异步执行

 

AOF重写配置

 

 

 

4、选择

 

以上是关于redis持久化的方法及对比的主要内容,如果未能解决你的问题,请参考以下文章

缓存数据REDIS:Redis简介及Memcached 对比

缓存数据REDIS:Redis简介及Memcached 对比

第一章Redis入门部署及持久化介绍

Redis单例主从模式sentinel以及集群的配置方式及优缺点对比

redis持久化方法对比分析

Redis之持久化主从哨兵及分片集群