radis 持久化之 AOF

2021-10-24 14:50:35 字數 467 閱讀 5420

2種方式

rdb 資料快照

aof 的寫入是先執行指令,再記錄日誌

為什麼需要重寫日誌?

因為aof檔案過大,會存在以下問題:

為什麼可以重寫

因為操作記錄存在冗餘

怎麼重寫

主程序 fork 乙個子程序 bgrewriteaof,bgrewriteaof 程序得到主程序的記憶體拷貝

主線程繼續處理到來的操作,並將寫操作記錄到舊的aof

bgrewriteaof 新建乙個 aof,在後台執行重寫任務,利用記憶體中資料的最新狀態,直接生成相應的最新指令

重寫完成之後,主程序才會切換到新的aof, 保證不會丟失新的寫操作。

redis持久化之AOF持久化

aof與rdb持久化通過儲存資料庫中的鍵值對來記錄資料庫狀態不同,aof持久化是通過儲存redis伺服器所執行的寫命令來記錄資料庫狀態的。被寫入aof檔案的所有命令都是以redis的命令請求協議格式儲存的。當aof持久化功能處於開啟狀態,伺服器在執行完乙個寫命令之後,會以協議格式將被執行的寫命令追加...

redis持久化之AOF

號外號外,新建 redis 交流討論群 332160890,歡迎加入!一 說明 1.1aof 相關配置項 配置項作用aof rewrite perc 百分比閾值,當 aof的增量超過這個閾值時,開始 aof的 rewrite操作 aof rewrite min size 當aof 的檔案大小超過該值...

Redis持久化之AOF

aof是redis的另一種持久化方式。什麼是aof?aof的實現原理 aof相關配置 redis的配置檔案 配置檔案的第934行 everysec 將aof buf快取區的所有內容寫入到aof檔案,如果上次同步aof檔案的時間與當前時間大於1秒,那麼會再次對aof檔案進行同步,同步操作由乙個執行緒專...