我们知道在memcache和redis的优缺点对比中,其中memcache最大的缺点就是他无法做到持久化,这样的话如果服务器挂了或者出现什么故障,我们的数据就丢失了,而redis是支持数据的持久化的,他会把缓存的数据同步到物理磁盘中,这样如果服务器出现问题,我们再次重启的时候,redis就会把数据从物理磁盘中拿出来使用
在redis的官网中,是有有关于持久化的详细的说明的:


我们首先看到redis的持久化方式是有两种的,RDB和AOF。
1.RDB持久化方式
-
redis database,这种持久化方式的原理就是在间隔时间的每隔时间点进行数据的快照存储,这样的优点就是,你可以选择不同的频率去备份快照,可以24小时每小时一次也可以30天每天一次的备份,而且这种方式非常适合于灾难级别的数据恢复,因为他是可以同步到数据中心而且文件就一个,非常方便,然后就是他备份性能是比较好的,并且尤其在大数据的恢复是非常快的
-
而也正因为他的一些特性导致了一些缺点,比如因为是间隔时间点的方式备份,所以加入在某事件服务器挂了,那么备份的数据仅仅是上一次备份的数据,而不是实时的最后的数据; 然后因为RDB的方式是一直在创子进程来保证备份,所以他对于服务器的性能要求较高,如果配置低,会影响到他的备份;最后就是

持久化的配置
redis的持久化配置是在redis.config文件中,我们打开看下:



rdbchecksum yes 这个是在备份的时候,会进行数据的校验,这样也是会占用一些资源,这个一般也是默认开启。
2.AOF持久化方式


网友评论