選項(xiàng) | 同步頻率 |
---|---|
always | 每個(gè)Redis寫(xiě)命令都要同步寫(xiě)入硬盤(pán),但是這樣做會(huì)占用Redis所擁有的內(nèi)存,嚴(yán)重降低Redis的速度 |
everysec | 每秒執(zhí)行一次同步,顯式地將多個(gè)寫(xiě)命令同步到硬盤(pán) |
no | 讓操作系統(tǒng)來(lái)決定應(yīng)該何時(shí)進(jìn)行同步 |
最好使用everysec,既能避免每次都寫(xiě)入所造成的性能影響,又能避免操作系統(tǒng)崩潰所導(dǎo)致的可能丟失不定量數(shù)據(jù),其即使系統(tǒng)崩潰,用戶(hù)最多只會(huì)丟失一秒之內(nèi)產(chǎn)生的數(shù)據(jù),當(dāng)硬盤(pán)忙于執(zhí)行寫(xiě)入操作的時(shí)候,Redis還會(huì)優(yōu)雅的放慢自己的速度以便適應(yīng)硬盤(pán)的最大寫(xiě)入速度。
缺點(diǎn):因?yàn)镽edis會(huì)不斷的將被執(zhí)行的寫(xiě)命令紀(jì)錄到AOF文件里面,所以隨著Redis不斷執(zhí)行,AOF文件的體積也會(huì)不斷增長(zhǎng),極端條件下,AOF甚至可能會(huì)用完硬盤(pán)的所有可用空間。
為了解決上面的缺點(diǎn),Redis提供了BGREWRITEAOF命令,這個(gè)命令會(huì)通過(guò)移除AOF文件中的冗余命令來(lái)重寫(xiě)AOF文件,使得AOF文件盡可能的小。它的原理和BGSAVE命令相似,Redis會(huì)創(chuàng)建一個(gè)子進(jìn)程,然后由子進(jìn)程負(fù)責(zé)對(duì)AOF文件進(jìn)行重寫(xiě),因?yàn)锳OF文件重寫(xiě)也需要用到子進(jìn)程,所以同樣存在快照持久化因?yàn)閯?chuàng)建子進(jìn)程所導(dǎo)致的性能問(wèn)題和內(nèi)存占用問(wèn)題。
標(biāo)簽:唐山 揚(yáng)州 林芝 香港 澳門(mén) 廣東 景德鎮(zhèn) 贛州
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《內(nèi)存型數(shù)據(jù)庫(kù)Redis持久化小結(jié)》,本文關(guān)鍵詞 內(nèi)存型,數(shù)據(jù)庫(kù),Redis,持久化,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。