億級流量專案 redis持久化的意義

2022-07-13 09:54:10 字數 337 閱讀 5414

redis持久化的意義當然是 故障恢復,

當遇到為什麼要用的問題時候,想一想沒有用的場景怎麼樣,再想一想用了的場景怎麼樣

1. 如果redis不做持久化,它是儲存在記憶體中的,如果機器宕機了,資料就直接沒有了,要恢復資料,只能大批量的讀取資料庫資料,這樣的動作很慢,增大了資料庫的壓力。因此,不做持久化處理,是無法應對災難性的故障的

2. 如果做持久化,當機器宕機恢復後,無需從資料庫重新讀取資料,直接從持久化檔案讀取恢復即可

rdb: 每隔一段時間(幾分鐘,幾小時),生成記憶體中資料的乙份快照

aof: 只要資料有變化,就將記憶體資料寫入日誌檔案中,通過日誌檔案進行恢復

3.

Redis的持久化

我們都知道,redis的資料都是儲存在記憶體裡面的,導致了redis有如下特點 1.由於記憶體的容量較小,並且速度很快,所以redis相對於mysql orcle等資料庫相比,儲存的容量較小,但是io速度特別快。2.由於記憶體的臨時儲存性,在機器斷電之後記憶體裡的內容將會丟失,若redis沒有持久化...

redis的持久化

redis有兩種持久化策略 rdb 是redis的預設持久化級制。相當於照快照,儲存的是一種狀態。優點 快照速度極快 還原資料速度極快 適用於災難備份 缺點 小記憶體機器不適合,適用於記憶體充裕的計算機 rdb機制符合要求就會找快照 隨時啟動,會突然的占用一部分系統資源 伺服器正常關閉 key滿足一...

redis的持久化

該持久化方式實際是在redis內部乙個定時器事件,每隔固定時間去檢查當前資料發生的改變次數與時間是否滿足配置的持久化觸發的條件,如果滿足則通過作業系統fork呼叫來建立出乙個子程序,這個子程序缺省會與父程序共享相同的位址空間,這時就可以通過子程序來遍歷整個記憶體來進行儲存操作,而主程序則仍然可以提供...