Redis資料持久化管理之RDB模式

2021-08-28 08:46:58 字數 617 閱讀 3665

如今,redis在各類業務場景中發揮的作用越來越大,其中很重要的乙個原因就是redis直接操作的是記憶體,相比ssd或其他的磁碟等,尤其是在併發量大的讀場景下,其效能絕對高出一大截,另乙個作為人們選擇redis的原因就是其資料可持久化管理,一方面,在實際業務場景中,持久化資料在一段時間內可以大大降低後端應用和資料庫壓力,另一方面,可以設定過期策略的方式為其自身記憶體的管理提供了較好的伸縮性,但同時,作為儲存資料的一種伺服器,在現實場景中,像多數其他能夠儲存資料的伺服器一樣,不可避免的會面臨資料丟失的風險,為此,redis為降低這一風險提供了資料備份和恢復策略,那就是比較常見的兩種形式rdb和aof;

關於這兩種方式,大家可以簡單的這樣理解,rdb就是一種類似快照的方式,每隔一定的時間就會對當前寫到redis伺服器的資料進行備份,至於時間是多久,完全可以自行配置;

而aof則是採用類似於日誌的形式,將寫入的資料在指定的日誌上進行不斷的追加,通過這兩種形式,資料基本可以做到不丟失,下面通過在centos6.5上面演示這兩種形式的策略;

環境準備,centos6.5 , redis-4.0.11.tar,redis的安裝比較簡單,直接將redis的壓縮包上傳到自己定義的資料夾下面,解壓縮,進行編譯即可,

redis持久化之AOF持久化

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

Redis之持久化

aof中記錄的內容如下 其中,3 表示當前命令有三個部分,每部分都是由 數字 開頭,後面緊跟著具體的命令 鍵或值。這裡,數字 表示這部分中的命令 鍵或值一共有多少位元組。例如,3 set 表示這部分有 3 個位元組,也就是 set 命令。重寫機制具有 多變一 功能。所謂的 多變一 也就是說,舊日誌檔...

Redis 資料持久化

首先redis內部使用乙個redisobject物件來表示所有的key和value,redisobject最主要的資訊如上圖所示 type代表乙個value物件具體是何種資料型別,encoding是不同資料型別在redis內部的儲存方式,比如 type string代表value儲存的是乙個普通字串...