中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis--持久化RDB和AOF原理

發布時間:2020-07-24 15:08:56 來源:網絡 閱讀:688 作者:朱飛東 欄目:關系型數據庫

前言:

redis持久化方式分為兩種:RDB快照和AOF方式(默認為RDB模式),當Redis服務器重啟的時候,會自動恢復數據,優先從AOF中恢復,其次才從RDB中恢復
 

一、RDB快照模式

RDB方式原理:

當redis需要做持久化時(執行SAVA或者BGSAVA命令,或者是達到配置條件時執行),redis會fork一個子進程,子進程將數據寫到磁盤上一個臨時RDB文件中,當子進程完成寫臨時文件后,將原來的RDB替換掉(默認文件名為dump.rdb)
 

RDB備份條件和命令:

1、執行SAVE命令,在當前線程執行,會卡住
2、執行BGSAVE命令,在后臺線程執行,馬上返回
3、當符合用戶給定的配置條件時Redis會自動將內存中的所有數據進行快照并存儲在硬盤上。由兩個參數構成:時間和改動的鍵的個數。當在指定的時間內被更改的鍵的個數大于指定的數值時就會進行快照,在配置文件redis.conf中已經預置了3個條件:
save 900 1 # 900秒內有至少1個鍵被更改則進行快照 save 300 10 # 300秒內有至少10個鍵被更改則進行快照 save 60 10000 # 60秒內有至少10000個鍵被更改則進行快照
 

RDB優缺點:

定時備份,Redis效率高,但是容易造成數據丟失,丟失的多少和備份策略有關,例如:5分鐘備份一次,但是第8分時宕機了,那么就丟失了后面的3分鐘數據
 

二、AOF模式

AOF方式原理:

AOF就可以做到全程持久化,Redis每執行一個修改數據的命令,都會把這個命令添加到AOF文件中,當Redis重啟時,將會讀取AOF文件進行“重放”以恢復到 Redis關閉前的最后時刻。
由于os會在內核中緩存 write做的修改,所以可能不是立即寫到磁盤上。這樣aof方式的持久化也還是有可能會丟失部分修改。不過我們可以通過配置文件告訴redis我們想要 通過fsync函數強制os寫入到磁盤的時機。有三種方式如下(默認是:每秒fsync一次)
appendonly yes //啟用aof持久化方式
appendfsync always //每次收到寫命令就立即強制寫入磁盤,最慢的,但是保證完全的持久化,不推薦使用
appendfsync everysec //每秒鐘強制寫入磁盤一次,在性能和持久化方面做了很好的折中,推薦
appendfsync no //完全依賴os,性能最好,持久化沒保證
 

AOF優缺點

AOF基本可以保證數據不丟失,但是AOF持久化文件會變的越來越大。例如我們調用incr test命令100次,文件中必須保存全部的100條命令,其實有99條都是多余的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

朝阳区| 繁峙县| 庆城县| 仁寿县| 大安市| 乌苏市| 天柱县| 莱芜市| 深泽县| 湘阴县| 元谋县| 唐河县| 资中县| 富源县| 惠水县| 永昌县| 兴宁市| 易门县| 镇远县| 南京市| 永年县| 芜湖县| 鄂温| 建水县| 贵州省| 泗阳县| 建昌县| 望江县| 沂水县| 丽江市| 孟州市| 新昌县| 安仁县| 南充市| 宝兴县| 隆昌县| 定州市| 明光市| 汨罗市| 麻城市| 金乡县|