RDB:RDB做鏡像全量持久化,將redis所有的資料以二進制保存,RDB會耗費較長時間,不夠實時,在停機的時候會導致大量丟失資料,他是隔一段時間開啟子執行緒,持久化這段時間的資料,
優點:1 使用二進制,檔案比較小
2 災難恢復時因為檔案小恢復更快
3 重啟更快
4 因為是fork一個子執行緒進行持久化,所有對效率影響很小,
缺點:1 容易丟失某一段時間的資料
2 在開始子執行緒時 耗時會造成卡頓
AOF:增量持久化,保存當前一秒或者當條指令,以文本保存,
優點:可以實作1s一次寫入 ,最多丟失1s資料
缺點:檔案比較大
混合方式:現用RDB寫入開頭,然后在使用AOF寫入后續操作,這樣結合了兩種方式的優點,
AOF需要redis-server.exe redis.windows.conf 啟動才生效
總結:RDB需要AOF來配合使用,在redis實體重啟時,會使用RDB持久化檔案重新構建記憶體,再使用AOF重放近期的操作指令來實作完整恢復重啟之前的狀態,AOF持久化開啟且存在AOF檔案時,優先加載AOF檔案;AOF關倍訓者AOF檔案不存在時,加載RDB檔案;加載AOF/RDB檔案城后,Redis啟動成功; AOF/RDB檔案存在錯誤時,Redis啟動失敗并列印錯誤資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/255664.html
標籤:其他
