您好,登錄后才能下訂單哦!
前言
Redis是一種高級key-value數據庫。它跟memcached類似,不過數據可以持久化,而且支持的數據類型很豐富。有字符串,鏈表,集 合和有序集合。支持在服務器端計算集合的并,交和補集(difference)等,還支持多種排序功能。所以Redis也可以被看成是一個數據結構服務 器。
Redis的所有數據都是保存在內存中,然后不定期的通過異步方式保存到磁盤上(這稱為“半持久化模式”);也可以把每一次數據變化都寫入到一個append only file(aof)里面(這稱為“全持久化模式”)。
人生在于折騰系列,網絡,多線程等系列博客樓主還在繼續折騰也不會放棄。這是全新的系列,緩存的知識其實并不僅僅在于簡單的增刪改查,我覺得有必要全面深入的學習一波。記錄學習的過程與體悟。
RDB
什么是RDB
對redis中的數據執行周期性的持久化,通過配置文件中設置檢查間隔時間與備份觸發條件來對數據進行周期性的持久化
RDB持久化的優點
RDB持久化的缺點
如何配置redis的RDB持久化
redis.conf文件,去配置持久化
save 60 1000
每隔60s,如果有超過1000個key發生了變更,那么就生成一個新的dump.rdb文件,就是當前redis內存中完整的數據快照,這個操作也被稱之為snapshotting,快照
也可以手動調用save或者bgsave命令,同步或異步執行rdb快照生成。(save在生成dump.rdb文件的時候redis主線程將會被阻塞,bgsave則不會阻塞redis主線程)
save可以設置多個,就是多個snapshotting檢查點,每到一個檢查點,就會去check一下,是否有指定的key數量發生了變更,如果有,就生成一個新的dump.rdb文件
AOF
什么AOF
AOF機制對每條寫入命令作為日志記錄,以append-only的模式寫入一個日志文件中,在redis重啟的時候,可以通過回放AOF日志中的寫入指令來重新構建整個數據集。
AOF持久化的優點
AOF持久化機制的缺點
如何配置redis的AOF持久化
AOF持久化,默認是關閉的,默認是打開RDB持久化
appendonly yes,可以打開AOF持久化機制,在生產環境里面,一般來說AOF都是要打開的,除非你說隨便丟個幾分鐘的數據也無所謂。打開AOF持久化機制之后,redis每次接收到一條寫命令,就會寫入日志文件中,當然是先寫入os cache的,然后每隔一定時間再fsync一下。
如果AOF和RDB都開啟了,redis重啟的時候,優先通過AOF進行數據恢復的,因為aof數據比較完整
可以配置AOF的fsync策略,有以下三種策略可以選擇:
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。