摘要:為了讓讀者做好使用構(gòu)建真實(shí)軟件的準(zhǔn)備,本章將展示維護(hù)數(shù)據(jù)安全以及應(yīng)對系統(tǒng)故障的方法。上一篇文章實(shí)戰(zhàn)第三章命令第七節(jié)其他命令下一篇文章實(shí)戰(zhàn)第四章數(shù)據(jù)安全與性能保障第節(jié)快照持久化
上一篇文章:Python--Redis實(shí)戰(zhàn):第三章:Redis命令:第七節(jié):其他命令
下一篇文章:Python--Redis實(shí)戰(zhàn):第四章:數(shù)據(jù)安全與性能保障:第2節(jié):快照持久化
前面的幾章介紹了各式各樣的Redis命令以及使用這些命令來操作數(shù)據(jù)結(jié)構(gòu)的方法,還列舉了幾個使用Redis來解決實(shí)際問題的例子。為了讓讀者做好使用Redis構(gòu)建真實(shí)軟件的準(zhǔn)備,本章將展示維護(hù)數(shù)據(jù)安全以及應(yīng)對系統(tǒng)故障的方法。另外,本章還會介紹一些能夠在保證數(shù)據(jù)完整性的前提下提升Redis性能的方法。
本章首先會介紹Redis的各個持久化選項(xiàng),這些選項(xiàng)可以讓用戶將字節(jié)的數(shù)據(jù)存儲在硬盤上面。接著本章將介紹如果通過Redis的復(fù)制特性,把不斷更新的數(shù)據(jù)副本存儲到附加的機(jī)器上面,從而提升系統(tǒng)的性能和數(shù)據(jù)的可靠性 。之后本章將會說明同時使用復(fù)制和持久化的好處和壞處,并通過這些例子來告訴讀者應(yīng)該如果去選擇適合自己的持久化選項(xiàng)和復(fù)制選項(xiàng)。最后本章將對Reds的事務(wù)特性和流水線特性進(jìn)行介紹,并討論如果診斷某些性能問題。
閱讀這一章的重點(diǎn)是要弄懂更多的Redis運(yùn)作原理,從而學(xué)會如何在首先保障數(shù)據(jù)正確的前提下,加快數(shù)據(jù)操作的執(zhí)行速度。
現(xiàn)在,讓我們來看看Redis是如果將數(shù)據(jù)存儲到硬盤里面,使得數(shù)據(jù)在Redis重啟之后仍然存在的。
持久化選項(xiàng)Redis提供了兩種不同的持久化方法來將數(shù)據(jù)存儲到硬盤里面。一種方法叫快照(snapshotting),它可以將存在于某一時刻的所有數(shù)據(jù)都寫入硬盤里面。另一種方法叫只追加文件(append-only file,AOF),它會在執(zhí)行寫命令時,將被執(zhí)行的寫命令復(fù)制到硬盤里面。這兩種持久化方法即可以同時使用,又可以多帶帶使用,在某些情況下甚至可以兩種方法都不使用,具體選擇哪種持久化方法需要根據(jù)用戶的數(shù)據(jù)以及應(yīng)用的決定。
將內(nèi)存中的數(shù)據(jù)存儲到硬盤的一個主要原因是為了在之后重用數(shù)據(jù),或者是為了防止系統(tǒng)故障而將數(shù)據(jù)備份到一個遠(yuǎn)程位置。另外,存儲在Redis里面的數(shù)據(jù)有可能是經(jīng)過長時間計(jì)算得出的,或者有程序在使用Redis存儲的數(shù)據(jù)進(jìn)行計(jì)算,所有用戶希望可以將這些數(shù)據(jù)存儲起來以便之后使用,這樣就不必再重新計(jì)算了。對于一些Redis應(yīng)用來說,“計(jì)算”可能只是簡單地將另一個數(shù)據(jù)庫的數(shù)據(jù)復(fù)制到Redis里面,但對于另外一些Redis應(yīng)用來說,Redis存儲的數(shù)據(jù)可能是根據(jù)數(shù)十億行日志進(jìn)行聚合分析得出的結(jié)果。
兩組不同的配置選項(xiàng)控制著Redis將數(shù)據(jù)寫入硬盤里面的方法。下面代碼展示了這些配置選項(xiàng)以及他們的實(shí)例配置值:
#快照持久化選項(xiàng) #多久執(zhí)行一次自動快照操作 save 60 1000 #創(chuàng)建快照失敗后是否仍然繼續(xù)執(zhí)行寫命令 stop-writes-on-bgsave-error no #是否對快照文件進(jìn)行壓縮 rdbcompression yes #命名硬盤上的快照文件 dbfilename dump.rdb #AOF持久化選項(xiàng) appendonly no appendfsync everysec no-appendfsync-on-rewrite no auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb #共享選項(xiàng),這個選項(xiàng)決定了快照文件和AOF文件的保存位置。 dir ./
接下來的一節(jié)將介紹如何使用快照來保存數(shù)據(jù)安全。
上一篇文章:Python--Redis實(shí)戰(zhàn):第三章:Redis命令:第七節(jié):其他命令
下一篇文章:Python--Redis實(shí)戰(zhàn):第四章:數(shù)據(jù)安全與性能保障:第2節(jié):快照持久化
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44988.html
摘要:因?yàn)槲募貙懸残枰玫阶舆M(jìn)程,所以快照持久化因?yàn)閯?chuàng)建子進(jìn)程而導(dǎo)致的性能問題和內(nèi)存占用問題,在持久化中也同樣存在。上一篇文章實(shí)戰(zhàn)第四章數(shù)據(jù)安全與性能保障第節(jié)快照持久化下一篇文章實(shí)戰(zhàn)第四章數(shù)據(jù)安全與性能保障第節(jié)復(fù)制 上一篇文章:Python--Redis實(shí)戰(zhàn):第四章:數(shù)據(jù)安全與性能保障:第2節(jié):快照持久化下一篇文章:Python--Redis實(shí)戰(zhàn):第四章:數(shù)據(jù)安全與性能保障:第4節(jié):復(fù)制 ...
摘要:上一篇文章實(shí)戰(zhàn)第四章數(shù)據(jù)安全與性能保障第節(jié)持久化選項(xiàng)下一篇文章實(shí)戰(zhàn)第四章數(shù)據(jù)安全與性能保障第節(jié)持久化可以通過創(chuàng)建快照來獲得存儲在內(nèi)存里面的數(shù)據(jù)在某個時間點(diǎn)上的副本。 上一篇文章:Python--Redis實(shí)戰(zhàn):第四章:數(shù)據(jù)安全與性能保障:第1節(jié):持久化選項(xiàng)下一篇文章:Python--Redis實(shí)戰(zhàn):第四章:數(shù)據(jù)安全與性能保障:第3節(jié):AOF持久化 Redis可以通過創(chuàng)建快照來獲得存儲...
閱讀 2423·2021-08-18 10:21
閱讀 2532·2019-08-30 13:45
閱讀 2161·2019-08-30 13:16
閱讀 2128·2019-08-30 12:52
閱讀 1374·2019-08-30 11:20
閱讀 2632·2019-08-29 13:47
閱讀 1631·2019-08-29 11:22
閱讀 2770·2019-08-26 12:11