细说Redis之 Redis的持久化

Posted lonelyxmas

tags:

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

原文:细说Redis(二)之 Redis的持久化

前言

    在上一篇文章【细说Redis(一)之 Redis的数据结构与应用场景】中,主要介绍了Reids的数据结构。

    对于redis的执行命令,这里不做介绍,因为网上搜索一堆,无必要再做介绍。

AOF&RDB

    Redis的有两种持久化,分别是AOF、RDB。

    AOF是文件增量存储。RDB是文件快照。AOF是存储的是redis的每个步骤增删改的命令。

区别

技术分享图片

 

    在Redis内部机制来说,RDB模式首先产生一个子进程,调用fork()。然后用子线程写到一个临时的RDB文件,最后把这个临时的RDB文件替换正在运行的RDB文件。

    AOF模式是所有增改写的命令都追加到文件的末尾,这样的好处是你恢复数据方式多样。例如有一种黑科技,有人不小心flush掉一个db的数据了,可以把aof文件复制出来,并且把相应的flush命令去掉,重启redis并且更新aof文件就可以还原原来数据了。

 

应用场景

    1.需要使用持久化、丢失数据比较敏感的场景,使用AOF模式。也可使用AOF+RDB的模式。因为AOF是增量的,保存你最近的操作,每当有数据操作,都会保存到AOF文件中。

       可以每秒钟进行AOF增量设置,这样你最多丢失一秒钟的数据。

    2.如果redis持久化要求不那么严格,并且希望redis一最快的速度运行。则可以使用RDB模式即可。因为RDB是可是设置“xxx秒后最少n个key有变动,进行保存”。RDB是全量更新的,所以丢失数据的间隔很大。

 

可以关注本人的公众号,多年经验的原创文章共享给大家。

技术分享图片

以上是关于细说Redis之 Redis的持久化的主要内容,如果未能解决你的问题,请参考以下文章

redis 之redis持久化rdb与aof

5-Redis 的持久化之 RDB

redis之 Redis持久化配置

010 redis持久化之RDB

redis学习redis持久化之RDBAOF

缓存系列之四:redis持久化与redis主从复制