您当前的位置: 首页 >  redis

壹小俊

暂无认证

  • 3浏览

    0关注

    885博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

redis-AOF日志:宕机了,Redis如何避免数据丢失?

壹小俊 发布时间:2021-10-13 19:52:28 ,浏览量:3

如果有人问你:“你会把Redis用在什么业务场景下?”我想你大概率会说:“我会把它当作缓存使用,因为它把后端数据库中的数据存储在内存中,然后直接从内存中读取数据,响应速度会非常快。”没错,这确实是Redis的一个普遍使用场景,但是,这里也有一个绝对不能忽略的问题:一旦服务器宕机,内存中的数据将全部丢失。

我们很容易想到的一个解决方案是,从后端数据库恢复这些数据,但这种方式存在两个问题:一是,需要频繁访问数据库,会给数据库带来巨大的压力;二是,这些数据是从慢速数据库中读取出来的,性能肯定比不上从Redis中读取,导致使用这些数据的应用程序响应变慢。所以,对Redis来说,实现数据的持久化,避免从后端数据库中进行恢复,是至关重要的。

目前,Redis的持久化主要有两大机制,即AOF日志和RDB快照。在接下来的两节课里,我们就分别学习一下吧。这节课,我们先重点学习下AOF日志。

AOF日志是如何实现的?

说到日志,我们比较熟悉的是数据库的写前日志(Write Ahead Log, WAL),也就是说,在实际写数据前,先把修改的数据记到日志文件中,以便故障时进行恢复。不过,AOF日志正好相反,它是写后日志,“写后”的意思是Redis是先执行命令,把数据写入内存,然后才记录日志,如下图所示:

关注
打赏
1664335782
查看更多评论
立即登录/注册

微信扫码登录

0.0585s