精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

面試中經常被問到的Redis持久化與恢復,該如何解決?

存儲 存儲軟件 Redis
本文主要講了 Redis 的持久化相關功能,持久化一直是影響 Redis 性能的高發地,也是面試中經常被問到的。

一、前言

本文主要講了 Redis 的持久化相關功能,持久化一直是影響 Redis 性能的高發地,也是面試中經常被問到的。

包括 RDB 相關的特定和優缺點,AOF 的優缺點,事實上,由于 RDB 的數據實時性問題,目前用 AOF 比較多了,而持久化恢復也是優先 AOF。

RDB 是舊的模式,現在基本上都使用 AOF,當然,今天兩個都會一起聊聊。

二、 RDB

RDB 流程圖:

RDB 特點:

1、RDB 是一種快照模式,即——保存的是 key value 數據內容。

2、RDB 有 2 種持久方式,同步 save 模式和異步 bgsave 模式。由于 save 是同步的,所以可以保證數據一致性,而 bgsave 則不能。

3、save 可以在客戶端顯式觸發,也可以在 shutdown 時自動觸發;bgsave 可以在客戶端顯式觸發,也可以通過配置由定時任務觸發,也可以在 slave 節點觸發。

4、save 導致 redis 同步阻塞,基本已經廢棄。bgsave 則不會導致阻塞,但也有缺點:在 fork 時,需要增加內存服務器開銷,因為當內存不夠時,將使用虛擬內存,導致阻塞 Redis 運行。所以,需要保證空閑內存足夠。

5、默認執行 shutdown 時,如果沒有開啟 AOF,則自動執行 bgsave。

6、每次的 RDB 文件都是替換的。

關于優化:

Redis 會壓縮 RDB 文件,使用 LZF 算法,讓最終的 RDB 文件遠小于內存大小,默認開啟。但會消耗 CPU。

RDB 缺點:

1、無法秒級持久化。

2、老版本 Redis 無法兼容新版本 RDB。

RDB 優點:

1、文件緊湊,適合備份,全量復制場景。例如每 6 小時執行 bgsave,保存到文件系統之類的。

2、Redis 加載 RDB 恢復數據遠遠快于 AOF。

三、 AOF

由于 RDB 的數據實時性問題,AOF(append only file) 是目前 Redis 持久化的主流方式。

AOF 特點:

1、默認文件名是 appendonly.aof。和 RDB 一樣,保存在配置中 dir 目錄下。

2、AOF 相比較于 RDB,每次都會保存寫命令,數據實時性更高。

3、AOF 由于每次都會記錄寫命令,文件會很大,因此需要進行優化,稱之為“重寫機制”(下面詳細說)。

4、AOF 每次保存的寫命令都放在一個緩沖區,根據不同的策略(下面詳細說)同步到磁盤。

“重寫機制” 細節:

1、fork 子進程(類似 bgsave)

2、主進程會寫到2個緩沖區,一個是原有的 “AOF 緩存區”,一個是專門為子進程準備的 “AOF 重寫緩沖區”;

3、子進程寫到到新的 AOF 文件中,批量的,默認 32m;寫完后通知主進程。

4、主進程把“AOF 重寫緩沖區”的數據寫到新 AOF 文件中。

5、將新的 AOF 文件替換老文件。

重寫流程圖:

緩沖區同步策略,由參數 appendfsync 控制,一共3種:

1、always:調用系統 fsync 函數,直到同步到硬盤返回; 嚴重影響redis性能。

2、everysec:先調用 OS write 函數, 寫到緩沖區,然后 redis 每秒執行一次 OS fsync 函數。 推薦使用這種方式。

3、no: 只執行 write OS 函數,具體同步硬盤策略由 OS 決定; 不推薦,數據不安全,容易丟失數據。

四、持久化恢復

AOF 和 RDB 文件都可以用于服務器重啟時的數據恢復,具體流程如下圖:

從圖中可以看出優先加載 AOF,當沒有 AOF 時才加載 RDB。當 AOF 或者 RDB 存在錯誤,則加載失敗。

五、問題排查和性能優化

Redis 持久化是影響 Redis 性能的高發地,也是面試中常問的問題。

1. fork 操作

當 Redis 做 RDB 或者 AOF 重寫時,必然要進行 fork 操作,對于 OS 來說,fork 都是一個重量級操作。而且,fork 還會拷貝一些數據,雖然不會拷貝主進程所有的物理空間,但會復制主進程的空間內存頁表。對于 10GB 的 Redis 進程,需要復制大約 20MB 的內存頁表,因此 fork 操作耗時跟進程總內存量息息相關,再加上,如果使用虛擬化技術,例如 Xen 虛擬機,fork 會更加耗時。

一個正常的 fork 耗時大概在 20毫秒左右。為什么呢,假設一個 Redis 實例的 OPS 在 5 萬以上,如果 fork 操作耗時在秒級,那么僵拖慢幾萬條命令的執行,對生產環境影響明顯。

我們可以在 Info stats 統計中查詢 latestforkusec 指標獲取最近一次 fork 操作耗時,單位微秒。

如何優化:

1、優先使用物理機或者高效支持 fork 的虛擬化技術,避免使用 Xen。

2、控制 redis 實例***內存,盡量控制在 10GB 以內。

3、合理配置 Linux 內存分配策略,避免內存不足導致 fork 失敗。

4、降低 fork 的頻率,如適度放寬 AOF 自動觸發時機,避免不必要的全量復制。

2. 子進程開銷

fork 完畢之后,會創建子進程,子進程負責 RDB 或者 AOF 重寫,這部分過程主要涉及到 CPU,內存,硬盤三個地方的優化。

1、CPU 寫入文件的過程是 CPU 密集的過程,通常子進程對單核 CPU 利用率接近 90%。 如何優化呢?既然是 CPU 密集型操作,就不要綁定單核 CPU,因為這樣會和父 CPU 進行競爭。同時,不要和其他 CPU 密集型服務不是在一個機器上。如果部署了多個 Redis 實例,盡力保證統一時刻只有一個子進程執行重寫工作。

2、內存 子進程通過 fork 操作產生,占用內存大小等同于父進程,理論上需要兩倍的內存完成持久化操作,但 Linux 有 copy on write 機制,父子進程會共享相同的物理內存頁,當父進程處理寫操作時,會把要修改的頁創建對應的副本,而子進程在 fork 操作過程中,共享整個父進程內存快照。 即——如果重寫過程中存在內存修改操作,父進程負責創建所修改內存頁的副本。這里就是內存消耗的地方。 如何優化呢?盡量保證同一時刻只有一個子進程在工作;避免大量寫入時做重寫操作。

3、硬盤 硬盤開銷分析:子進程主要職責是將 RDB 或者 AOF 文件寫入硬盤進行持久化,勢必對硬盤造成壓力,可通過工具例如 iostat,iotop 等,分析硬盤負載情況。

如何優化:

1、不要和其他高硬盤負載的服務放在一臺機器上,例如 MQ,存儲。

2、AOF 重寫時會消耗大量硬盤 IO,可以開啟配置 no-appendfsync-on-rewrite,默認關閉。表示在 AOF 重寫期間不做 fsync 操作。

3、當開啟 AOF 的 Redis 在高并發場景下,如果使用普通機械硬盤,每秒的寫速率是 100MB左右,這時,Redis 的性能瓶頸在硬盤上,建議使用 SSD。

4、對于單機配置多個 Redis 實例的情況,可以配置不同實例分盤存儲 AOF 文件,分攤硬盤壓力。

3. AOF 追加阻塞

當開啟 AOF 持久化時,常用的同步硬盤的策略是“每秒同步” everysec,用于平衡性能和數據安全性,對于這種方式,redis 使用另一條線程每秒執行 fsync 同步硬盤,當系統資源繁忙時,將造成 Redis 主線程阻塞。

流程圖如下:

通過上圖可以發現:everysec 配置最多可能丟失 2 秒數據,不是 1 秒;如果系統 fsync 緩慢,將會導致 Redis 主線程阻塞影響效率。

問題定位:

1、發生 AOF 阻塞時,會輸入日志。用于記錄 AOF fsync 阻塞導致拖慢 Redis 服務的行為。

2、每當 AOF 追加阻塞事件發生時,在 info Persistence 統計中,aofdelayedfsync 指標會累加,查看這個指標方便定位 AOF 阻塞問題。

3、AOF 同步最多運行 2 秒的延遲,當延遲發生時說明硬盤存在性能問題,可通過監控工具 iotop 查看,定位消耗 IO 的進程。

4. 單機多實例部署

Redis 單線程架構無法充分利用多核CPU,通常的做法是一臺機器上部署多個實例,當多個實例開啟 AOF 后,彼此之間就會產生CPU 和 IO 的競爭。

如何解決這個問題呢?

讓所有實例的 AOF 串行執行。

我們通過 info Persistence 中關于 AOF 的信息寫出 Shell 腳本,然后串行執行實例的 AOF 持久化。

整個過程如圖:

通過不斷判斷 AOF 的狀態,手動執行 AOF 重寫,保證 AOF 不會存在競爭。具體的 Shell 編寫以及 info 信息判斷,可以查看下圖:

六、總結

本文主要講了 Redis 的持久化相關功能,持久化一直是影響 Redis 性能的高發地,也是面試中經常被問到的。包括 RDB 相關的特定和優缺點,AOF 的優缺點,事實上,由于 RDB 的數據實時性問題,目前用 AOF 比較多了。而持久化恢復也是優先 AOF。

關于持久化的問題排查,就很麻煩了,但無非幾個方面,fork 耗時,子進程的 CPU,內存,硬盤開銷,AOF 的同步阻塞,單機多實例部署。

這些優化,可以通過前面寫的分析進行排查。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2018-02-01 09:26:12

面試算法題程序員

2019-03-06 14:26:31

Javascript面試前端

2022-01-12 09:08:37

索引JavaReference對象

2019-12-16 15:37:57

JavaScript人生第一份工作瀏覽器

2022-10-09 07:33:38

JavaSPI程序

2022-08-12 09:35:36

JavaScript面試

2019-07-16 10:10:46

JavaScript數據類型

2020-05-14 08:13:56

JDK命令Java

2020-07-01 17:25:28

Redis數據庫內存

2019-05-15 16:45:13

SpringBoot面試題Java

2010-04-06 13:07:45

Oracle數據庫

2024-09-29 09:25:53

2018-12-14 09:48:23

Redis數據故障

2018-11-14 12:18:35

設計畫面太亂視覺元素

2024-03-26 00:03:08

Redis數據RDB

2010-03-31 17:17:32

2021-03-16 08:26:49

RedisRDBAOF

2021-10-18 22:29:54

OOMJava Out Of Memo

2021-07-18 07:59:42

RedisRDBAOF

2022-04-01 12:40:13

MySQL數據庫
點贊
收藏

51CTO技術棧公眾號

亚洲第一色中文字幕| 久久99国产乱子伦精品免费| 欧美性高清videossexo| 五码日韩精品一区二区三区视频| 伊人中文字幕在线观看| 精品一区二区三区的国产在线观看| 欧美在线观看你懂的| 26uuu成人| 人妻va精品va欧美va| 男人天堂欧美日韩| 色偷偷888欧美精品久久久| 永久看看免费大片| 中文字幕人成乱码在线观看| 国产精品视频免费| www 成人av com| 国产精品乱子伦| 人人狠狠综合久久亚洲婷婷| 欧美一区二区二区| 国产精品99久久免费黑人人妻| www在线免费观看| 国产激情一区二区三区| 51色欧美片视频在线观看| 91禁男男在线观看| 成人黄色91| 黑人精品xxx一区| 偷拍盗摄高潮叫床对白清晰| 视频污在线观看| 久久99九九99精品| 欧美中文字幕在线| 免费人成在线观看| 欧美韩日一区| 日韩激情av在线播放| 天堂av.com| 日本不卡一二三| 亚洲aaa精品| 中文字幕av一区| 91热福利电影| 99久久自偷自偷国产精品不卡| 九九热视频精品| 精品日韩免费| 日韩电影大片中文字幕| 日本一二三区在线| 日韩精品麻豆| 欧美日韩亚洲激情| 男人添女人下部视频免费| 成人亚洲性情网站www在线观看| 成人激情黄色小说| 91精品免费| 国产精品福利电影| 免费xxxx性欧美18vr| 欧美亚洲成人xxx| 国产一级大片在线观看| 99久久99热这里只有精品| 亚洲图片制服诱惑| 我和岳m愉情xxxⅹ视频| 国产精品115| 欧美tickling挠脚心丨vk| 亚洲精品中文字幕乱码无线| 国产一区二区色噜噜| 一本久久a久久精品亚洲| 日韩a级黄色片| 精华区一区二区三区| 91小视频在线| 麻豆久久久9性大片| 日韩有码第一页| 国产精品亚洲一区二区三区妖精 | 成人网址在线观看| 在线播放精品视频| 另类综合日韩欧美亚洲| 国产精品私拍pans大尺度在线| 久久久久久久国产精品毛片| 欧美午夜不卡| 97国产一区二区精品久久呦| 久草国产在线视频| 一区二区高清| 日本三级韩国三级久久| 波多野结衣黄色网址| 奇米影视在线99精品| 国产精品高清在线观看| av手机天堂网| 国产精品乱码一区二区| 成人免费在线电影网| 日韩精品一区二区在线| 亚洲视频天天射| 欧美大胆视频| 一本大道亚洲视频| 亚洲色图27p| 欧美福利电影在线观看| 欧美日韩不卡合集视频| 国产永久免费网站| 伊人亚洲精品| 精品国产免费视频| 色婷婷精品久久二区二区密| 西野翔中文久久精品字幕| 亚洲视频在线免费看| 娇小11一12╳yⅹ╳毛片| 欧美国产高清| 九九久久综合网站| 99热只有这里有精品| 久久久一二三区| 欧美在线电影| 欧美精品少妇videofree| 欧美另类一区二区| 久久国产三级精品| 国产综合久久久久| 后入内射欧美99二区视频| 久久综合九色综合欧美亚洲| 亚洲一二三区精品| 国产理论在线| 欧美三级韩国三级日本三斤| 日韩视频在线观看一区二区三区| 免费日韩一区二区三区| 色综合伊人色综合网| 成人欧美一区二区三区黑人一| 亚洲高清影视| 国模视频一区二区三区| 在线观看毛片网站| av在线综合网| 波多野结衣激情| 樱桃视频成人在线观看| 欧美一级专区免费大片| 一区二区黄色片| 久久精品国产68国产精品亚洲| 久久久久久91香蕉国产| 99久久久无码国产精品免费蜜柚| 国产一区二区成人久久免费影院| 国产精品久久久久久久久婷婷| 久香视频在线观看| 亚洲制服丝袜一区| 在线观看免费av网址| 欧美重口另类| 欧美国产第二页| 在线视频 中文字幕| 久久亚洲精精品中文字幕早川悠里| 国产精品一二三在线观看| 日韩制服一区| 亚洲天堂第二页| 国产五月天婷婷| 国产精品996| 中文字幕欧美日韩一区二区| 欧美极度另类| 亚洲精品视频在线播放| 日本少妇在线观看| 国产不卡在线视频| 国产日本欧美在线| 成人影院在线免费观看| 日韩视频123| 久久国产波多野结衣| 日韩国产成人精品| 日本一区美女| 超碰一区二区| 亚洲精品网站在线播放gif| 最新一区二区三区| 九九视频精品免费| 一区二区三区四区在线视频| 欧美aaa大片视频一二区| 亚洲精品网站在线播放gif| 波多野结衣不卡| 国产精品嫩草久久久久| 人人爽人人爽av| 欧美三级特黄| 动漫一区二区在线| 女人让男人操自己视频在线观看| 精品一区二区亚洲| 中国女人真人一级毛片| 亚洲日本在线a| 五月六月丁香婷婷| 亚洲二区精品| 欧美主播一区二区三区美女 久久精品人| 希岛爱理一区二区三区av高清| 一本色道久久88综合亚洲精品ⅰ| 中文字幕欧美人妻精品| 亚洲精品视频自拍| 中文字幕精品视频在线| 人禽交欧美网站| 亚洲小视频在线播放| 老牛精品亚洲成av人片| 国产精品18久久久久久麻辣| 精品国产白色丝袜高跟鞋| 日韩精品影音先锋| 色av性av丰满av| 日韩专区一区二区| 一区二区成人在线视频| www.自拍偷拍| 激情偷乱视频一区二区三区| 午夜免费福利小电影| 日韩精品电影| 国产精品毛片va一区二区三区| 欧美一级大片| 欧美成人网在线| 欧美扣逼视频| 欧美一级二级三级蜜桃| 中文字幕亚洲乱码熟女1区2区| 中文字幕亚洲区| 亚洲色偷偷色噜噜狠狠99网 | 国产精品久久午夜| 稀缺呦国内精品呦| 麻豆国产精品官网| 成人性生活视频免费看| 99久久综合| 欧美日韩一区二区三区在线视频 | 日韩中文字幕在线看| 男人的天堂a在线| 欧美日韩国产综合久久| 日韩 欧美 中文| 亚洲免费资源在线播放| 成人免费网站黄| 国产成人a级片| 日本美女视频一区| 蘑菇福利视频一区播放| 日韩精品免费一区| 日韩成人免费| 欧美日韩无遮挡| 久久影院资源站| 亚洲一区二区三区四区视频| 亚洲伦乱视频| 国产91对白在线播放| 毛片大全在线观看| 久久天堂电影网| 最新国产在线观看| 亚洲欧美日韩综合| 丰满肉肉bbwwbbww| 制服丝袜中文字幕亚洲| 波多野结衣二区三区| 色综合久久中文字幕综合网| 国产做受高潮漫动| 洋洋成人永久网站入口| www欧美com| 中文字幕一区二区三区四区| 日本成人免费视频| 久久久av毛片精品| 免费观看av网站| 99久久国产免费看| 国产一精品一aⅴ一免费| 国产剧情一区二区| 久久精品国产露脸对白| 久久aⅴ国产欧美74aaa| 一本色道久久亚洲综合精品蜜桃 | 国产精品一区二区久久久| 神马久久资源| 国产精品美女主播在线观看纯欲| 久久久一本精品| 国产成人一区二区| 日韩高清在线| 国产精品欧美在线| 免费视频成人| 亚洲japanese制服美女| 麻豆国产一区二区三区四区| 91免费电影网站| 精品国产欧美| 成人动漫视频在线观看免费| 亚洲精品高潮| 精品视频第一区| 免费看日本一区二区| 午夜精品一区二区在线观看| 99国产**精品****| 9191国产视频| 亚洲国产黄色| 久久人妻精品白浆国产| 蜜桃视频在线观看一区二区| 天天操狠狠操夜夜操| 国产成人激情av| 中国av免费看| 国产欧美一区二区精品久导航| 我想看黄色大片| 亚洲人成小说网站色在线| 欧美黄色免费看| 亚洲18色成人| 免费看毛片网站| 欧美日韩一级大片网址| av av片在线看| 亚洲国产欧美一区二区三区同亚洲 | 欧美视频精品一区| 在线观看 亚洲| 欧美日韩精品一二三区| 国产不卡精品视频| 亚洲精品电影网| 91caoporm在线视频| 久久99精品久久久久久噜噜| 国产无遮挡裸体视频在线观看| 国产成人精品免高潮费视频| 在线不卡一区| 国精产品一区二区| 久久国产成人午夜av影院宅| 国产一区二区三区在线免费| 亚洲免费婷婷| 成人日韩在线视频| 波多野结衣91| 老司机精品免费视频| 亚洲成人在线网站| 亚洲av无码精品一区二区| 日韩片之四级片| 国产女人在线视频| 欧美高清自拍一区| 韩国成人在线| 国产一区二区高清不卡 | 亚洲小视频在线播放| 亚欧美中日韩视频| 免费看的av网站| 国产三级欧美三级| 亚洲一区二区91| 欧美美女一区二区| 色久视频在线播放| 九九热精品视频| 亚洲电影有码| 国产精品v欧美精品∨日韩| 日韩国产一区二区三区| 男人天堂av片| 久久97超碰国产精品超碰| 538国产视频| 一区二区三区精品视频| 一级成人免费视频| 亚洲摸下面视频| 美女网站视频在线| 92裸体在线视频网站| 国产免费av一区二区三区| 69sex久久精品国产麻豆| 狠狠色丁香婷婷综合久久片| 精品人妻无码一区| 狠狠干狠狠久久| 亚洲成人777777| 久久在线视频在线| 少妇精品视频在线观看| 日韩亚洲视频在线| 久久久久免费| 中文字幕 亚洲一区| 亚洲成人免费av| 国产ts变态重口人妖hd| 日韩一区二区在线视频| 国产电影一区二区三区爱妃记| 欧美黑人3p| 久久99伊人| 免费一级做a爰片久久毛片潮| 欧美日韩一区二区在线播放| 色窝窝无码一区二区三区| 欧美激情高清视频| 亚洲一区 二区| 黄色一级片国产| 国产精品一级在线| 欧美又粗又大又长| 欧美哺乳videos| 182在线播放| 黄色国产精品一区二区三区| 亚洲视频福利| 性久久久久久久久久久| 精品国产户外野外| 日本v片在线免费观看| 欧美一级片久久久久久久| 羞羞答答一区二区| 免费黄色日本网站| 国产欧美视频一区二区三区| 中文字幕日本人妻久久久免费| 在线观看视频亚洲| 四虎精品一区二区免费| 50度灰在线观看| 国产成a人无v码亚洲福利| 日韩污视频在线观看| 日韩精品极品视频免费观看| 亚洲精品永久免费视频| 日韩av电影免费观看| 免费高清视频精品| 欧美日韩一级大片| 337p日本欧洲亚洲大胆精品| 蜜桃视频在线观看播放| 日本一区免费| 精品无人区卡一卡二卡三乱码免费卡| 午夜激情福利网| 亚洲国产三级网| 韩日一区二区| 日韩欧美一级在线| 99国产精品久久久| 久久精品偷拍视频| 久久成人av网站| 欧美一级全黄| 在线观看免费视频高清游戏推荐| 综合电影一区二区三区| www天堂在线| 欧洲亚洲免费视频| 久久综合av| 亚洲精品激情视频| 欧美在线视频不卡| 日本欧美电影在线观看| 欧美日韩亚洲一区二区三区在线观看| 久久99精品一区二区三区| 精品无码久久久久久久久| 亚洲天堂开心观看| 美女久久精品| 国产1区2区在线| 亚洲美女在线国产| 免费在线性爱视频| 91在线观看免费观看| 一区二区三区国产盗摄| 国产中文av在线| 日韩精品极品视频免费观看| 国产欧美88| 国产成人久久777777| 亚洲图片欧美视频| aaa在线免费观看| 好吊妞www.84com只有这里才有精品| 日本欧美在线观看|