X'inhu l-isem sħiħ ta' Redis RDB? Modalità ta 'operazzjoni tal-persistenza tad-data tal-memorja Redis RDB

L-isem sħiħ ta 'RDB huwaRedis database.

  • Kif jissuġġerixxi l-isem, RDB hija database Redis użata biex taħżen id-dejta.
  • Għalhekk, permezz tal-persistenza RDB, id-dejta maħżuna fil-memorja Redis tinkiteb fil-fajl RDB u tissejvja fuq id-diska biex tinkiseb il-persistenza.
  • Il-karatteristika ta 'Redis hija li tista' tippersisti data, jiġifieri, tikteb data fil-memorja fuq disk biex tiżgura li l-ebda data ma tintilef, u tista 'wkoll tagħbija data minn disk fil-memorja.

X'inhu l-isem sħiħ ta' Redis RDB? Modalità ta 'operazzjoni tal-persistenza tad-data tal-memorja Redis RDB

L-operazzjonijiet ta 'Redis fil-bidu huma kollha bbażati fuq il-memorja, għalhekk il-prestazzjoni hija għolja ħafna, iżda ladarba l-programm jingħalaq, id-dejta tintilef.

Għalhekk, għandna bżonn niktbu data fil-memorja fuq disk f'intervalli speċifikati, li hija Snapshot fil-lingwaġġ.

Meta jiġi restawrat, il-fajl snapshot jinkiteb direttament fil-memorja.

Din hija wkoll waħda mid-differenzi ewlenin bejn Redis u Memcached, minħabba li Memcached m'għandu l-ebda kapaċità ta 'persistenza.

Għall-persistenza tad-dejta tal-memorja Redis, Redis tagħtina l-metodi li ġejjin:

  • Metodu ta 'snapshot (RDB, Redis DataBase): ikteb id-dejta tal-memorja fuq disk f'forma binarja f'ċertu mument;
  • Append Only File (AOF, Append Only File), irreġistra l-kmandi kollha tal-operat, u waħħal mal-fajl f'forma ta 'test;
  • Persistenza ibrida, metodu ġdid wara Redis 4.0, persistenza ibrida tgħaqqad il-vantaġġi ta 'RDB u AOF.Meta tikteb, l-ewwel ikteb id-dejta kurrenti fil-bidu tal-fajl fil-forma ta 'RDB, u mbagħad issalva l-kmandi ta' operazzjoni sussegwenti fil-fajl fil-forma ta 'AOF, li mhux biss tista' tiżgura l-veloċità tar-restart tar-Redis, iżda wkoll tnaqqas ir-riskju ta' telf ta' data.

Minħabba li kull skema ta 'persistenza għandha xenarji ta' użu speċifiċi.

Modalità ta 'operazzjoni tal-persistenza tad-data tal-memorja Redis RDB

  • RDB (Redis DataBase) huwa l-proċess tal-kitba ta 'snapshot tal-memorja (Snapshot) f'ċertu mument fuq disk f'forma binarja.
  • Snapshots tal-memorja huma dak li għidna hawn fuq.Jirreferi għar-rekord tal-istat tad-data fil-memorja f'ċertu mument.
  • Dan huwa simili għat-teħid ta 'ritratt. Meta tieħu ritratt ta' ħabib, ritratt jista 'istantanjament jirreġistra l-immaġini kollha tal-ħabib.
  • Hemm żewġ modi biex tiskatta RDB: wieħed huwa triggering manwali, u l-ieħor huwa triggering awtomatiku.

Ixpruna l-RDB manwalment

Hemm żewġ operazzjonijiet biex tiskatta l-persistenza manwalment:savebgsave.

Id-differenza ewlenija bejniethom hija jekk timblokkax jew le l-eżekuzzjoni tal-ħajt prinċipali Redis.

1. ħlief kmand

L-eżekuzzjoni tal-kmand tas-salvataġġ fuq in-naħa tal-klijent se tiskatta l-persistenza ta 'Redis, iżda se tagħmel ukoll Redis fi stat ta' imblukkar. Mhux se jirrispondi għall-kmandi mibgħuta minn klijenti oħra sakemm l-RDB jibqa 'persisti, għalhekk għandu jintuża b'kawtela f' l-ambjent tal-produzzjoni.

127.0.0.1:6379> save
OK
127.0.0.1:6379>

Il-proċess ta 'eżekuzzjoni tal-kmand huwa muri fil-figura 

2. kmand bgsave

  • bgsave (issejvjar fl-isfond) huwa salvataġġ fl-isfond.
  • L-akbar differenza bejnha u l-kmand tas-salvataġġ hija li bgsave se jfork proċess tifel biex iwettaq il-persistenza.
  • Il-proċess kollu jiġri biss meta l-proċess tat-tfal huwa furketta.Hemm biss imblukkar qasir.
  • Wara li jinħoloq il-proċess tat-tfal, il-proċess ewlieni ta 'Redis jista' jirrispondi għal talbiet minn klijenti oħra.

bl-imblukkar tal-proċess kollusavemeta mqabbla mal-kmandbgsaveIl-kmand huwa ovvjament aktar adattat għalina biex nużaw.

127.0.0.1:6379> bgsave
Background Saving started # 提示开始后台保存 
127.0.0.1:6379>

Awtomatikament trigger RDB

Wara li tkellem dwar triggering manwali, ejja nħarsu lejn triggering awtomatiku.Nistgħu kkonfiguraw il-kundizzjonijiet għall-attivazzjoni awtomatika fil-fajl tal-konfigurazzjoni.

1. ħlief mn

  • ħlief mn ifisser li fi żmien m sekondi, jekk n ċwievet jinbidlu, il-persistenza tiġi attivata awtomatikament.Il-parametri mu n jistgħu jinstabu fil-fajl tal-konfigurazzjoni Redis.
  • Pereżempju, ħlief 60 1 ifisser li fi żmien 60 sekonda, sakemm tinbidel wieħed ewlieni, il-persistenza RDB se tiġi attivata.
  • L-essenza li tiskatta awtomatikament il-persistenza hija li jekk il-kundizzjonijiet tal-grillu stabbiliti jiġu sodisfatti, Redis awtomatikament tesegwixxi l-kmand bgsave darba.

Nota: Meta jiġu ssettjati kmandi multipli ta' salvataġġ mn, kwalunkwe kundizzjoni waħda tixpruna l-persistenza.

Pereżempju, aħna nissettjaw iż-żewġ kmandi li ġejjin save mn:

save 60 10
save 600 20
  • Meta l-valur taċ-ċavetta Redis jinbidel 60 darbiet fi żmien 10s, il-persistenza tiġi attivata;
  • Jekk iċ-ċavetta Redis tinbidel fi żmien 60s, u jekk il-valur jinbidel inqas minn 10 darbiet, allura Redis tiddetermina jekk iċ-ċavetta Redis ġietx modifikata mill-inqas 600 darba fi żmien 20s, u jekk iva, iqanqal il-persistenza.

2. Flushall

  • Il-kmand flushall jintuża biex titlaħla d-database Redis.
  • Għandu jintuża b'kawtela f'ambjent ta 'produzzjoni.
  • Meta Redis tesegwixxi l-kmand tal-flushall, tixpruna persistenza awtomatika u tikklerja l-fajl RDB.

3. Grillu tas-sinkronizzazzjoni Master-slave

Fir-replikazzjoni master-slave Redis, meta n-node slave iwettaq operazzjoni ta 'replikazzjoni sħiħa, in-node master jesegwixxi l-kmand bgsave biex jibgħat il-fajl RDB lin-node slave Dan il-proċess awtomatikament iqajjem il-persistenza Redis.

Redis jista 'jistaqsi l-parametri tal-konfigurazzjoni attwali permezz ta' kmandi.

Il-format tal-kmand tal-mistoqsija huwa:config get xxx

Pereżempju, jekk trid tikseb l-issettjar tal-isem tal-ħażna għal fajl RDB, tista 'tuża config get dbfilename .

L-effett tal-eżekuzzjoni huwa kif ġej:

127.0.0.1:6379> config get dbfilename
1) "dbfilename"
2) "dump.rdb"

Peress li s-server Redis se jimblokka meta jgħabbi l-fajl RDB sakemm it-tagħbija tkun kompluta, jista 'jikkawża żmien twil u l-websajt ma tistax tiġi aċċessata.

Jekk trid tħassar manwalment il-fajl RDB cache dump.rdb ta 'Redis, tista' tuża l-kmand li ġej biex issib il-mogħdija tal-ħażna tal-fajl dump.rdb▼

find / -name dump.rdb
  • Imbagħad, ħassar manwalment il-fajl cache dump.rdb permezz ta 'SSH.

Redis jistabbilixxi l-konfigurazzjoni ta' RDB

Rigward l-issettjar tal-konfigurazzjoni ta 'RDB, tista' tuża ż-żewġ modi li ġejjin:

  1. Immodifika manwalment il-fajl tal-konfigurazzjoni Redis
  2. Uża s-settings tal-linja tal-kmand, konfig set dir "/usr/data" huwa l-kmand tal-ħażna biex timmodifika l-fajl RDB

Nota: Il-konfigurazzjoni f'redis.conf tista 'tinkiseb permezz ta' config get xxx u modifikata permezz ta 'config set xxx value, u l-metodu ta' modifika manwalment tal-fajl ta 'konfigurazzjoni Redis huwa globalment effettiv, jiġifieri, il-parametri stabbiliti billi jerġa' jibda s-server Redis mhux se jintilef, iżda modifikati bl-użu tal-kmand , se jintilef wara li Redis jerġa 'jibda.

Madankollu, jekk trid timmodifika manwalment il-fajl tal-konfigurazzjoni Redis biex jidħol fis-seħħ immedjatament, għandek bżonn terġa 'tibda s-server Redis, u l-metodu tal-kmand ma jeħtieġx li terġa' tibda s-server Redis.

Irkupru tal-fajl RDB

Meta jibda s-server Redis, jekk il-fajl RDB dump.rdb jeżisti fid-direttorju tal-għeruq Redis, Redis awtomatikament jgħabbi l-fajl RDB biex jirrestawra d-dejta persistenti.

Jekk m'hemm l-ebda fajl dump.rdb fid-direttorju tal-għeruq, jekk jogħġbok mexxi l-fajl dump.rdb fid-direttorju tal-għeruq ta 'Redis l-ewwel.

Naturalment, hemm informazzjoni tal-log meta Redis jibda, li turi jekk il-fajl RDB huwiex mgħobbi.

Is-server Redis jimblokka waqt it-tagħbija tal-fajl RDB sakemm it-tagħbija titlesta.

Issa nafu li l-persistenza RDB hija maqsuma f'żewġ modi: triggering manwali u triggering awtomatiku:

  1. Il-vantaġġ tiegħu huwa li l-fajl tal-ħażna huwa żgħir u l-irkupru tad-data huwa aktar mgħaġġel meta Redis jinbeda.
  2. L-iżvantaġġ huwa li hemm riskju ta 'telf ta' data.

L-irkupru ta 'fajls RDB huwa wkoll sempliċi ħafna. Poġġi biss il-fajls RDB fid-direttorju tal-għeruq ta' Redis, u Redis awtomatikament jgħabbi u jirrestawra d-data meta tibda.

Il-vantaġġi u l-iżvantaġġi RDB

1) Vantaġġi RDB

Il-kontenut RDB huwa data binarja, jokkupa inqas memorja, huwa aktar kompatt, u huwa aktar adattat bħala fajl backup;

RDB huwa utli ħafna għall-irkupru tad-diżastri, huwa fajl kompressat li jista 'jiġi trasferit għal server remot aktar malajr għall-irkupru tas-servizz Redis;

RDB jista 'jtejjeb bil-kbir il-veloċità ta' Redis, minħabba li l-proċess ewlieni ta 'Redis ser fork proċess tat-tfal biex jippersisti data fuq disk.

Il-proċess ewlieni Redis ma jwettaqx operazzjonijiet bħal disk I/O;

Meta mqabbel mal-fajls tal-format AOF, il-fajls RDB jerġgħu jibdew aktar malajr.

2) Żvantaġġi ta 'RDB

Minħabba li RDB jista 'biss jiffranka d-dejta f'ċertu intervall ta' ħin, jekk is-servizz Redis jintemm aċċidentalment fin-nofs, id-dejta Redis tintilef għal perjodu ta 'żmien;

Proċess li fih RDB jeħtieġ frieket frekwenti biex iżżommha fuq disk bl-użu ta 'subentry.

Jekk is-sett tad-dejta huwa kbir, il-furketta tista 'tieħu ħafna ħin, u jekk is-sett tad-dejta huwa kbir, il-prestazzjoni tas-CPU hija fqira, li tista' tikkawża li Redis ma jkunx jista 'jservi lill-klijenti għal ftit millisekondi jew saħansitra sekonda.

Naturalment, nistgħu wkoll tiddiżattiva l-persistenza biex intejbu l-effiċjenza tal-eżekuzzjoni ta 'Redis.

Jekk m'intix sensittiv għat-telf tad-data, tista 'tagħmel dan meta l-klijent jgħaqqad config set save "" Kmand biex tiddiżattiva l-persistenza għal Redis.

redis.conf, jekk fisaveIkkummenta l-konfigurazzjonijiet kollha fil-bidu, u l-persistenza tkun ukoll diżattivata, iżda dan ġeneralment ma jsirx.

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "X'inhu l-isem sħiħ ta' Redis RDB? Redis RDB In-Memory Data Persistence Operation Mode, li huwa utli għalik.

Merħba biex taqsam il-link ta' dan l-artikolu:https://www.chenweiliang.com/cwl-26677.html

Merħba fil-kanal Telegram tal-blog ta' Chen Weiliang biex tikseb l-aħħar aġġornamenti!

🔔 Kun l-ewwel li ġġib il-"Gwida għall-Użu tal-Għodda AI għall-Marketing tal-Kontenut ChatGPT" siewja fid-direttorju ta' fuq tal-kanal! 🌟
📚 Din il-gwida fiha valur kbir, 🌟Din hija opportunità rari, titlifhiex! ⏰⌛💨
Share u like jekk togħġobkom!
Il-qsim u l-likes tiegħek huma l-motivazzjoni kontinwa tagħna!

 

发表 评论

L-indirizz elettroniku tiegħek mhux se jkun ippubblikat. Jintużaw l-oqsma meħtieġa * Tikketta

iscroll għal fuq