9.單機(jī)持久化

  • 持久化的思路

無論mysql還是redis持久化思路大致兩個(gè)方案:
1.快照
2.日志

  • Linux 系統(tǒng)默認(rèn)進(jìn)程間數(shù)據(jù)隔離,但是父進(jìn)程可以讓子進(jìn)程看見父進(jìn)程的變量

  • 創(chuàng)建子進(jìn)程:

1.創(chuàng)建子進(jìn)程的速度
2.創(chuàng)建子進(jìn)程需要復(fù)制父進(jìn)程的變量,內(nèi)存是否夠

  • fork()

1.速度相對快
2.占用空間相對下
3.copyonwrite

  • redis 非阻塞對外提供服務(wù)的情況下如何做數(shù)據(jù)RDB?
image.png

image.png

image.png
  • RDB
    優(yōu)點(diǎn):

節(jié)省空間
恢復(fù)數(shù)據(jù)速度快

缺點(diǎn):

數(shù)據(jù)丟失

  • AOF

redis寫操作記錄追加到文件中

  • 優(yōu)點(diǎn)

丟失數(shù)據(jù)少
可與RDB同時(shí)開啟,AOF開啟時(shí)只會以AOF進(jìn)行恢復(fù)數(shù)據(jù)
4.0版本后將AOF中包RDB全量+AOF增量

  • 缺點(diǎn)

占用空間大
恢復(fù)數(shù)據(jù)速度慢

  • AOF做了那些優(yōu)化

4.0前合并/抵消寫日志
4.0后重寫后RDB+AOF增量

開啟AOF后,redis增刪改等寫操作將觸發(fā)IO,當(dāng)寫操作過多時(shí)影響redis相應(yīng)時(shí)間
appendfsync always:總是寫入aof文件萝嘁,并完成磁盤同步
appendfsync everysec:每一秒寫入aof文件撩扒,并完成磁盤同步
appendfsync no:寫入aof文件链瓦,不等待磁盤同步。
可見气筋,從持久化角度講,always是最安全的旋圆。從效率上講宠默,no是最快的。而redis默認(rèn)設(shè)置進(jìn)行了折中灵巧,選擇了everysec搀矫。合情合理。
bgrewriteaof機(jī)制刻肄,在一個(gè)子進(jìn)程中進(jìn)行aof的重寫瓤球,從而不阻塞主進(jìn)程對其余命令的處理,同時(shí)解決了aof文件過大問題敏弃。

現(xiàn)在問題出現(xiàn)了卦羡,同時(shí)在執(zhí)行bgrewriteaof操作和主進(jìn)程寫aof文件的操作,兩者都會操作磁盤麦到,而bgrewriteaof往往會涉及大量磁盤操作绿饵,這樣就會造成主進(jìn)程在寫aof文件的時(shí)候出現(xiàn)阻塞的情形,現(xiàn)在no-appendfsync-on-rewrite參數(shù)出場了瓶颠。如果該參數(shù)設(shè)置為no拟赊,是最安全的方式,不會丟失數(shù)據(jù)粹淋,但是要忍受阻塞的問題要门。如果設(shè)置為yes呢虏肾?這就相當(dāng)于將appendfsync設(shè)置為no,這說明并沒有執(zhí)行磁盤操作欢搜,只是寫入了緩沖區(qū)封豪,因此這樣并不會造成阻塞(因?yàn)闆]有競爭磁盤),但是如果這個(gè)時(shí)候redis掛掉炒瘟,就會丟失數(shù)據(jù)吹埠。丟失多少數(shù)據(jù)呢?在linux的操作系統(tǒng)的默認(rèn)設(shè)置下疮装,最多會丟失30s的數(shù)據(jù)缘琅。

因此,如果應(yīng)用系統(tǒng)無法忍受延遲廓推,而可以容忍少量的數(shù)據(jù)丟失刷袍,則設(shè)置為yes。如果應(yīng)用系統(tǒng)無法忍受數(shù)據(jù)丟失樊展,則設(shè)置為no呻纹。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市专缠,隨后出現(xiàn)的幾起案子雷酪,更是在濱河造成了極大的恐慌,老刑警劉巖涝婉,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件哥力,死亡現(xiàn)場離奇詭異,居然都是意外死亡墩弯,警方通過查閱死者的電腦和手機(jī)吩跋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來渔工,“玉大人钞澳,你說我怎么就攤上這事≌歉浚” “怎么了轧粟?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵,是天一觀的道長脓魏。 經(jīng)常有香客問我兰吟,道長,這世上最難降的妖魔是什么茂翔? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任混蔼,我火速辦了婚禮,結(jié)果婚禮上珊燎,老公的妹妹穿的比我還像新娘惭嚣。我一直安慰自己遵湖,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布晚吞。 她就那樣靜靜地躺著延旧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪槽地。 梳的紋絲不亂的頭發(fā)上迁沫,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天,我揣著相機(jī)與錄音捌蚊,去河邊找鬼集畅。 笑死,一個(gè)胖子當(dāng)著我的面吹牛缅糟,可吹牛的內(nèi)容都是我干的挺智。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼窗宦,長吁一口氣:“原來是場噩夢啊……” “哼赦颇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起迫摔,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎泥从,沒想到半個(gè)月后句占,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡躯嫉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年纱烘,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片祈餐。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡擂啥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出帆阳,到底是詐尸還是另有隱情哺壶,我是刑警寧澤,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布蜒谤,位于F島的核電站山宾,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏鳍徽。R本人自食惡果不足惜资锰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望阶祭。 院中可真熱鬧绷杜,春花似錦直秆、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至懊缺,卻和暖如春疫稿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背鹃两。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工遗座, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人俊扳。 一個(gè)月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓途蒋,卻偏偏與公主長得像,于是被迫代替她去往敵國和親馋记。 傳聞我的和親對象是個(gè)殘疾皇子号坡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 在這篇文章,我們繼續(xù)有關(guān)Redis方面知識的學(xué)習(xí)梯醒,一起了解一下其中一個(gè)非常重要的內(nèi)容:Redis的持久化機(jī)制宽堆。 什...
    路上陽光閱讀 842評論 2 5
  • 我們通常將 Redis 作為緩存使用,提高讀取響應(yīng)性能茸习,一旦 Redis 宕機(jī)畜隶,內(nèi)存中的數(shù)據(jù)全部丟失,假如現(xiàn)在直接...
    匠丶閱讀 417評論 0 0
  • 參考文章: Redis提供的持久化機(jī)制(RDB和AOF) 前言:本文只是一個(gè)簡單的介紹和總結(jié)号胚,具體學(xué)習(xí)還請自行查詢...
    拿破侖蛋糕閱讀 378評論 0 0
  • 企業(yè)級redis集群架構(gòu)的特點(diǎn) 海量數(shù)據(jù) 高并發(fā) 高可用 要達(dá)到高可用籽慢,持久化是不可減少的,持久化主要是做災(zāi)難恢復(fù)...
    lucode閱讀 2,194評論 0 7
  • 前邊我們已經(jīng)介紹了Redis五種數(shù)據(jù)類型的命令與配置文件的基本配置届惋,今天讓我們從理論和配置兩個(gè)層面來揭開Redis...
    阿Q說代碼閱讀 200評論 0 2