91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

Redis中AOF持久化方式的工作流程

發布時間:2020-05-22 15:47:09 來源:億速云 閱讀:444 作者:鴿子 欄目:關系型數據庫

Redis的RDB方式不能做到妙計持久化,但是AOF方式可以做到。如果數據比較重要,丟失會造成嚴重的后果,那么RDB方式明顯不合適,要用到AOF的方式。aof方式和mysql的binlog日志有些像,都只記錄新增、修改、刪除的操作。不同的是,redis會每隔一段時間后,會對aof文件進行重寫,降低aof文件的大小。

AOF工作流程

這里,為什么命令要先寫入aof_buf,因為如果直接寫入aof文件,那么性能就完全取決去硬盤的io性能。寫入aof_buf是為了提高寫入的性能。

配置

appendonly:是否開啟aof持久化方式,默認是no。如想開啟則改為yes。

dir:aof文件存放目錄

appendfilename:aof文件名

appendfsync:aof同步方式,有三個值,分別如下:

  • always:每寫入一個命令時就同步,數據的安全性最高,但性能差

  • everysec:每秒同步,默認的方式,性能高,安全性也還行

  • no:同步操作交給操作系統,數據的安全性最差。

auto-aof-rewrite-percentage 、auto-aof-rewrite-min-size 這兩個配置是和aof重寫機制相關的,只有同時滿足這兩個條件才會觸發重寫機制。

auto-aof-rewrite-min-size是表示重寫時,文件大小必須必這個值要大,默認值是64mb

auto-aof-rewrite-percentage表示目前文件大小比上次重寫后的文件大小大這么多才行。

AOF重寫

redis的aof重寫機制有手動觸發和自動觸發兩種方式。手動觸發即輸入bgrewriteof命令。自動觸發即滿足上述所有的兩個條件。

為什么重寫能縮小文件體積,有幾種情況:

  • 過期的鍵及已刪除的鍵將不會再記錄

  • 許多單個操作可以有一個操作來完成,比如lpush a、lpush b,重寫后就是lpush a b.

下面看看aof重寫流程

Redis中AOF持久化方式的工作流程

  1. 執行bgrewriteof命令

  2. 主進程fork出一個子進程

  3. 原有的aof機制繼續運行,同時,也將新的命令寫入到aof_rewrite_buf中

  4. 子進程生成新的aof文件

  5. 通知父進程,新的aof文件已經生成成功;將aof_rewrite_buf中的命令追加到新的aof文件中;用新的aof文件替換舊的aof文件。

  6. 完成以上步驟后,aof重寫就完成了。

注意,如果一個服務器上面有多個redis服務,那么最好將他們重寫的時間分隔開,防止io及cpu競爭過大。

以上就是Redis持久化之AOF方式的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

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

AI

南召县| 定州市| 竹北市| 平远县| 永吉县| 海盐县| 安庆市| 大兴区| 忻州市| 盖州市| 沙湾县| 田林县| 阿荣旗| 金阳县| 焦作市| 汽车| 丹江口市| 青海省| 慈溪市| 鹤庆县| 吉林省| 政和县| 临夏县| 莱西市| 比如县| 永胜县| 红河县| 连平县| 连云港市| 潮州市| 长葛市| 邹平县| 唐河县| 兰西县| 集安市| 玉门市| 泸水县| 石楼县| 永登县| 杭锦旗| 正阳县|