新聞中心
Redis 的數(shù)據(jù)全部在內(nèi)存里,如果突然宕機(jī),數(shù)據(jù)就會(huì)全部丟失,因此必須有一種機(jī)制來(lái)保證 Redis 的數(shù)據(jù)不會(huì)因?yàn)楣收隙鴣G失,這種機(jī)制就是 Redis 的持久化機(jī)制,下面為大家詳細(xì)講解講解一下Redis持久化存儲(chǔ)。

成都創(chuàng)新互聯(lián)公司從2013年成立,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元海陵做網(wǎng)站,已為上家服務(wù),為海陵各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575
一、RBD(快照)
原理
在某個(gè)時(shí)間點(diǎn)將內(nèi)存中的數(shù)據(jù)寫(xiě)入一個(gè)磁盤(pán)的臨時(shí)文件,持久化結(jié)束后,用這個(gè)臨時(shí)文件替換上次持久化的文件。
配置文件
save 900 1 # 在900秒內(nèi)如果鍵值修改過(guò)1次就快照
save 300 10 # 在300秒內(nèi)如果鍵值修改過(guò)10次就快照
save 60 10000 # 在60秒內(nèi)鍵值修改過(guò)10000次就快照
stop-writes-on-bgsave-error yes # 后臺(tái)備份出錯(cuò)時(shí),是否禁止新的寫(xiě)入操作?
如果不禁止容易造成數(shù)據(jù)不一致
rdbcompression yes # 導(dǎo)出的rdb文件是否壓縮
rdbchecksum yes # 恢復(fù)時(shí)導(dǎo)入rdb文件是否檢驗(yàn)完整性、是否檢驗(yàn)版本是否一致
dbfilename dump.rdb # 導(dǎo)出來(lái)得rdb文件名
dir /var/lib/redis # rdb的存放路徑
二、AOF
原理
?通過(guò)將發(fā)送到服務(wù)器的寫(xiě)操作??命令??記錄下來(lái),形成AOF文件,此文件只許追加不能修改,Redis啟動(dòng)時(shí)會(huì)讀取AOF文件后重構(gòu)數(shù)據(jù)(重新執(zhí)行一遍)。 文件默認(rèn)名稱(chēng)是appendonly.aof?
配置文件
appendonly no # 是否開(kāi)啟aof功能
appendfilename "appendonly.aof" # 文件名
appendfsync always # 只要一修改就同步至緩沖區(qū),并同步至磁盤(pán)
appendfsync everysec # 每秒將數(shù)據(jù)同步至緩沖區(qū),并同步至磁盤(pán)
appendfsync no # redis不設(shè)定同步策略,由內(nèi)核設(shè)定的參數(shù)決定是否同步
no-appendfsync-on-rewrite no # appendfsync設(shè)定為always或everysec的話,還要不要同步磁盤(pán)
auto-aof-rewrite-percentage 100 # 每隔多久重構(gòu)aof文件,單位秒
auto-aof-rewrite-min-size 64mb # aof文件最小為多少時(shí)重構(gòu)一次aof文件。搭配上一條使用
aof-load-truncated yes # 崩潰修復(fù)后自動(dòng)進(jìn)行全備
aof重寫(xiě)、重構(gòu)
將大量重復(fù)的命令合并成一條命令,而不必頻繁的去重新執(zhí)行每一條命令.
三、AOF對(duì)比RDB
AOF更加安全,可以將數(shù)據(jù)即時(shí)同步到文件中,但是消耗磁盤(pán)I/O,效率低
Snapshot更高效,它是服務(wù)器在正常運(yùn)行情況下數(shù)據(jù)同步最佳手段,文件尺寸小,效率高,安全性低
注:RDB與AOF同時(shí)開(kāi)啟 默認(rèn)使用AOF來(lái)恢復(fù)數(shù)據(jù)
四、常用架構(gòu)
? 架構(gòu)良好的環(huán)境中:Master使用AOF,Slave使用snapshot。 原因是主要確保數(shù)據(jù)完整,從要速度快。?
網(wǎng)絡(luò)環(huán)境較差:建議使用master與slave同時(shí)使用AOF更加安全
網(wǎng)絡(luò)良好、需要收密集型寫(xiě)操作:建議Master采用snapshot,Slave采用AOF
當(dāng)前名稱(chēng):詳解Redis持久化存儲(chǔ)機(jī)制
標(biāo)題鏈接:http://m.fisionsoft.com.cn/article/djgiecd.html


咨詢
建站咨詢
