redis的持久化主要是采用rdb和aof进行的,下面我来将它们之间进行比较
rdb:采用二进制文件的方式,不是实时的进行存储,存储10key以上,才开始持久化机制,体积小。
优点:使用单独的子进程进行持久化操作,主进程不会进行任何IO操作,保证Redis的高可用特性,Redis默认采用rdb的方式进行存储。
缺点:rdb是间隔一段时间才进行持久化,如果说在持久化的期间,Redis发生故障的话,那么会造成数据的丢失。
aof:以日志的方式进行实时的同步,体积比较大,在文件的末尾进行累加,安全性能相对于rdb存储来说是高的。
注意:Redis宕机之后,Redis的值是不会失效的。
因为Redis默认开启的是rdb方式进行存储的,注明:rdb存储方式规定时间内key,value达到一定的存储次数才会开始进行持久化,rdb方式断开连接会自动备份,但是有些情况下是不可以的,比如:kill -9 进程/断电。