Redis的持久化
2017-09-19 15:49
218 查看
Redis的强大功能很大程序上是由于将其所有数据都存储到内存中,为了使Redis在重启后仍能保证数据不丢失,需要将数据从内存中以某种形式持久化到硬盘中
—>Redis持久化有两种方式,一种是RDB,一种的AOF,可以单独使用其中一种或将两种结合使用
RDB方式是通过快照完成的,当符合一定条件时Redis会自动将内存中的所有数据进行快照并且存储到硬盘上,进行快照的条件在配置文件中指定,有2个参数构成,时间和改动的键的个数,当在指定时间内被更改的键的个数大于指定数值时就会进行快照
RDB是Redis的默认持久化方式
RDB快照过程如下:
Redis使用fork函数复制一份当前进程(父进程)的副本(子进程);
2.父进程继续接收并处理客户端发来的命令,而子进程开始讲内存中的数据写入到硬盘中的临时文件
3当子进程写入完所有数据后会用该临时文件替换旧的RDB文件
RDB文件是通过压缩的,可以通过配置rbcompression参数来禁用压缩
手动快照:
如果没有触发自动快照,需要对Redis执行手动快照,用save 或者bgsave命令
RDB文件的压缩
压缩和不压缩的区别
压缩:
优点:减少磁盘存储空间
缺点:消耗CPU资源
不压缩:
优点:不消耗CPU资源
缺点:占用磁盘空间少
如何选择:看需求,看服务器资源情况
Redis是默认开启的。
—>Redis持久化有两种方式,一种是RDB,一种的AOF,可以单独使用其中一种或将两种结合使用
RDB方式是通过快照完成的,当符合一定条件时Redis会自动将内存中的所有数据进行快照并且存储到硬盘上,进行快照的条件在配置文件中指定,有2个参数构成,时间和改动的键的个数,当在指定时间内被更改的键的个数大于指定数值时就会进行快照
RDB是Redis的默认持久化方式
RDB快照过程如下:
Redis使用fork函数复制一份当前进程(父进程)的副本(子进程);
2.父进程继续接收并处理客户端发来的命令,而子进程开始讲内存中的数据写入到硬盘中的临时文件
3当子进程写入完所有数据后会用该临时文件替换旧的RDB文件
RDB文件是通过压缩的,可以通过配置rbcompression参数来禁用压缩
手动快照:
如果没有触发自动快照,需要对Redis执行手动快照,用save 或者bgsave命令
RDB文件的压缩
压缩和不压缩的区别
压缩:
优点:减少磁盘存储空间
缺点:消耗CPU资源
不压缩:
优点:不消耗CPU资源
缺点:占用磁盘空间少
如何选择:看需求,看服务器资源情况
Redis是默认开启的。
相关文章推荐
- Java实现Redis持久化到数据库的关键方法
- Redis的AOF持久化-Redis学习笔记四
- redis 持久化机制AOF/RDB详解
- 【Redis】Redis学习(七) Redis 持久化之RDB和AOF
- Java实现Redis持久化到数据库的关键方法
- Redis RDB AOF持久化方式
- 2.Redis持久化
- Redis设计与实现-持久化篇
- Redis作者:深度剖析Redis持久化
- 细说Redis持久化机制
- 总结redis第三部分(安全性、主从、哨兵、事物、持久化、发布与订阅、虚拟内存)
- Redis作者:深度剖析Redis持久化
- redis 持久化
- Redis持久化方式介绍
- redis 持久化技术 之 aof
- Redis持久化
- Redis官方文档》持久化
- Redis持久化磁盘IO方式及其带来的问题 有Redis线上运维经验的人会发现Redis在物理内存使用比较多,但还没有超过实际物理内存总容量时就会发生不稳定甚至崩溃的问题,有人认为是基于快照方式持
- Redis持久化
- 细说Redis持久化机制