在实际项目中,我们通常会把一些数据存放在redis中,如果redis因为某种原因宕机,那么存放在redis中的数据会丢失么?
显然是不会丢失的,redis默认情况下是有持久化机制,和大部分缓存框架一样都会有持久化机制和淘汰策略,比如ehcache等;也有单纯的缓存框架,比如membercache是没有持久化机制的,市面上很少用到。
而redis实现持久化机制有两种分别是RDB、AOF,默认是使用RDB,两种机制可以同时使用,具体看项目需求。

首先先了解一下全量同步和增量同步:
全量同步与增量同步
缺点:频率不是很大redis的持久化方式rdb和aof的区别,可能会造成数据丢失;
优点:对服务器压力小;
缺点:频率非常高redis的持久化方式rdb和aof的区别,对服务器同步压力非常大;
优点:可以保证数据不丢失;
redis持久性机制
Redis提供了两种持久化的机制,分别为RDB、AOF实现;
RDB采用定时 (全量同步) 持久化机制,但是服务器因为某种原因宕机后可能数据会丢失;
AOF是基于数据日志操作实现的持久化,所以AOF采用增量同步方案。
RDB持久化机制
AOF持久化机制
RDB与AOF同时使用,那么哪种方式优先使用?
优先使用AOF,其次使用RDB,因为RDB属于全量同步,可能会有一些短暂的数据没有同步过来;AOF属于增量同步,是把每次客户端的行为操作都记录下来,所以优先使用AOF; redis官方文档说明1G左右的内存,恢复差不多要20s左右,速度还是很快的。
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410
声明:本站所有资源系站长耗费大量精力时间物力长期搜集维护,故仅对会员免费开放,每日手选更新,非烂大街的采集站,开通会员: 点击此处自助开通或者联系站长微信muyang-0410开通




