Mikä on Redis RDB:n koko nimi? Redis RDB-muistin tietojen pysyvyyden toimintatila

RDB:n koko nimi onRedis database.

  • Kuten nimestä voi päätellä, RDB on Redis-tietokanta, jota käytetään tietojen tallentamiseen.
  • Siksi RDB:n pysyvyyden avulla Redis-muistiin tallennetut tiedot kirjoitetaan RDB-tiedostoon ja tallennetaan levylle pysyvyyden saavuttamiseksi.
  • Rediksen ominaisuus on, että se voi säilyttää tietoja, eli kirjoittaa tietoja muistista levylle varmistaakseen, että tietoja ei menetetä, ja voi myös ladata tietoja levyltä muistiin.

Mikä on Redis RDB:n koko nimi? Redis RDB-muistin tietojen pysyvyyden toimintatila

Rediksen toiminnot perustuvat alussa kaikki muistiin, joten suorituskyky on erittäin korkea, mutta kun ohjelma suljetaan, tiedot menetetään.

Siksi meidän on kirjoitettava muistissa olevia tietoja levylle tietyin väliajoin, mikä on ammattikieltä.

Palautettaessa tilannekuvatiedosto kirjoitetaan suoraan muistiin.

Tämä on myös yksi tärkeimmistä eroista Redisin ja Memcachedin välillä, koska Memcachedilla ei ole pysyvyyskykyä.

Redis-muistitietojen säilyttämiseksi Redis tarjoaa meille seuraavat menetelmät:

  • Snapshot-menetelmä (RDB, Redis DataBase): kirjoita muistitiedot levylle binäärimuodossa tietyllä hetkellä;
  • Liitä vain tiedosto (AOF, Append Only File), tallenna kaikki toimintokomennot ja liitä tiedostoon tekstimuodossa;
  • Hybridikestävyys, uusi menetelmä Redis 4.0:n jälkeen, hybridipysyvyys yhdistää RDB:n ja AOF:n edut.Kun kirjoitat, kirjoita ensin nykyiset tiedot tiedoston alkuun RDB-muodossa ja tallenna sitten seuraavat toimintokomennot tiedostoon AOF-muodossa, mikä ei vain takaa Redis-uudelleenkäynnistyksen nopeutta, vaan myös vähentää tietojen katoamisen riski.

Koska jokaisella pysyvyysjärjestelmällä on erityiset käyttöskenaariot.

Redis RDB-muistin tietojen pysyvyyden toimintatila

  • RDB (Redis DataBase) on prosessi, jossa kirjoitetaan muistin tilannekuva (Snapshot) tietyllä hetkellä levylle binäärimuodossa.
  • Muistin tilannekuvat ovat mitä sanoimme edellä.Se viittaa muistissa olevien tietojen tilatietueeseen tietyllä hetkellä.
  • Tämä on samanlainen kuin valokuvan ottaminen. Kun otat valokuvan ystävästä, valokuvaan voidaan välittömästi tallentaa kaikki ystävän kuvat.
  • On kaksi tapaa laukaista RDB: toinen on manuaalinen liipaisu ja toinen automaattinen liipaisu.

Laukaise RDB manuaalisesti

Pysyvyys voidaan laukaista manuaalisesti kahdella tavalla:savebgsave.

Suurin ero niiden välillä on se, estetäänkö Redis-pääsäikeen suorittaminen vai ei.

1. tallenna komento

Tallennuskomennon suorittaminen asiakaspuolella laukaisee Rediksen pysyvyyden, mutta se saa Redisin myös estotilaan. Se ei vastaa muiden asiakkaiden lähettämiin komentoihin ennen kuin RDB on säilytetty, joten sitä on käytettävä varoen tuotantoympäristöön.

127.0.0.1:6379> save
OK
127.0.0.1:6379>

Komennon suoritusprosessi on esitetty kuvassa 

2. bgsave-komento

  • bgsave (taustatallennus) on taustatallennus.
  • Suurin ero sen ja tallennuskomennon välillä on, että bgsave hakee lapsiprosessin suorittamaan pysyvyyttä.
  • Koko prosessi on vain silloin, kun lapsiprosessi on haarukka.On vain lyhyt tukos.
  • Kun aliprosessi on luotu, Rediksen pääprosessi voi vastata muiden asiakkaiden pyyntöihin.

estämällä koko prosessinsavekomentoon verrattunabgsaveKomento sopii meille selvästi paremmin.

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

Käynnistä RDB automaattisesti

Manuaalisesta laukaisusta puhumisen jälkeen tarkastellaan automaattista liipaisua.Voimme määrittää automaattisen laukaisun ehdot asetustiedostossa.

1. säästää mn

  • save mn tarkoittaa, että m sekunnissa, jos n näppäintä vaihtuu, pysyvyys käynnistyy automaattisesti.Parametrit m ja n löytyvät Redis-määritystiedostosta.
  • Esimerkiksi tallennus 60 1 tarkoittaa, että 60 sekunnin sisällä, niin kauan kuin yksi avain vaihtuu, RDB-pysyvyys käynnistyy.
  • Automaattisesti laukaisevan pysyvyyden ydin on, että jos asetetut laukaisuehdot täyttyvät, Redis suorittaa automaattisesti bgsave-komennon kerran.

Huomautus: Kun useita save mn -komentoja on asetettu, mikä tahansa ehto laukaisee pysyvyyden.

Asetamme esimerkiksi seuraavat kaksi save mn -komentoa:

save 60 10
save 600 20
  • Kun Redis-avaimen arvo muuttuu 60 kertaa 10 sekunnin sisällä, pysyvyys käynnistyy;
  • Jos Redis-avain muuttuu 60 sekunnin sisällä ja jos arvo muuttuu alle 10 kertaa, Redis määrittää, onko Redis-avainta muokattu vähintään 600 kertaa 20 sekunnin sisällä, ja jos on, laukaisee pysyvyyden.

2. Flushall

  • Flushall-komentoa käytetään Redis-tietokannan tyhjentämiseen.
  • Sitä on käytettävä varoen tuotantoympäristössä.
  • Kun Redis suorittaa flushall-komennon, se laukaisee automaattisen pysyvyyden ja tyhjentää RDB-tiedostot.

3. Master-slave synkronoinnin liipaisin

Kun Redis-isäntä-slave-replikaatiossa orjasolmu suorittaa täyden replikointitoiminnon, isäntäsolmu lähettää RDB-tiedoston orjasolmuun lähettämällä komennon bgsave. Tämä prosessi laukaisee automaattisesti Redisin pysyvyyden.

Redis voi kysellä nykyisiä kokoonpanoparametreja komentojen avulla.

Kyselykomennon muoto on:config get xxx

Jos esimerkiksi haluat saada RDB-tiedoston tallennusnimiasetuksen, voit käyttää config get dbfilename .

Suoritusvaikutus on seuraava:

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

Koska Redis-palvelin estää RDB-tiedoston latauksen, kunnes lataus on valmis, se voi kestää pitkään eikä verkkosivustoa voida käyttää.

Jos haluat poistaa Redisin RDB-välimuistitiedoston dump.rdb manuaalisesti, voit etsiä dump.rdb-tiedoston tallennuspolun seuraavalla komennolla▼

find / -name dump.rdb
  • Poista sitten manuaalisesti välimuistitiedosto dump.rdb SSH:n kautta.

Redis määrittää RDB:n asetukset

Mitä tulee RDB:n konfigurointiin, voit käyttää seuraavia kahta tapaa:

  1. Muokkaa Redis-määritystiedostoa manuaalisesti
  2. Käytä komentorivin asetuksia, config set dir "/usr/data" on tallennuskomento RDB-tiedoston muokkaamiseen

Huomautus: Tiedoston redis.conf konfiguraatio voidaan hankkia config get xxx -sovelluksella ja muokata config set xxx -arvon avulla, ja Redis-määritystiedoston manuaalinen muokkaaminen on maailmanlaajuisesti tehokas, eli Redis-palvelimen uudelleenkäynnistyksen avulla määritetyt parametrit eivät katoaa, mutta sitä muutetaan komennolla , se katoaa, kun Redis käynnistyy uudelleen.

Jos kuitenkin haluat muokata Redis-määritystiedostoa manuaalisesti niin, että se astuu voimaan välittömästi, sinun on käynnistettävä Redis-palvelin uudelleen, eikä komentomenetelmä edellytä Redis-palvelimen uudelleenkäynnistämistä.

RDB-tiedoston palautus

Kun Redis-palvelin käynnistyy ja RDB-tiedosto dump.rdb on Rediksen juurihakemistossa, Redis lataa RDB-tiedoston automaattisesti pysyvien tietojen palauttamiseksi.

Jos juurihakemistossa ei ole dump.rdb-tiedostoa, siirrä dump.rdb-tiedosto ensin Rediksen juurihakemistoon.

Tietenkin on lokitietoja, kun Redis käynnistyy, mikä näyttää, onko RDB-tiedosto ladattu.

Redis-palvelin estää RDB-tiedoston lataamisen, kunnes lataus on valmis.

Nyt tiedämme, että RDB:n pysyvyys on jaettu kahteen tapaan: manuaaliseen liipaisuun ja automaattiseen liipaisuun:

  1. Sen etuna on, että tallennustiedosto on pieni ja tietojen palautus on nopeampaa, kun Redis käynnistetään.
  2. Huono puoli on tietojen menettämisen vaara.

RDB-tiedostojen palauttaminen on myös hyvin yksinkertaista. Laita vain RDB-tiedostot Rediksen juurihakemistoon, niin Redis lataa ja palauttaa tiedot automaattisesti käynnistyessään.

RDB plussat ja miinukset

1) RDB:n edut

RDB:n sisältö on binääritietoa, joka vie vähemmän muistia, on kompaktimpaa ja sopii paremmin varmuuskopiotiedostoksi;

RDB on erittäin hyödyllinen katastrofipalautuksessa, se on pakattu tiedosto, joka voidaan siirtää nopeammin etäpalvelimelle Redis-palvelun palauttamista varten;

RDB voi parantaa huomattavasti Rediksen nopeutta, koska Redis-pääprosessi haarukkaaa aliprosessin säilyttämään tiedot levylle.

Redis-pääprosessi ei suorita toimintoja, kuten levyn I/O;

Verrattuna AOF-muotoisiin tiedostoihin, RDB-tiedostot käynnistyvät uudelleen nopeammin.

2) RDB:n haitat

Koska RDB voi tallentaa tietoja vain tietyin aikavälein, jos Redis-palvelu katkaistaan ​​vahingossa kesken, Redis-tiedot menetetään tietyksi ajaksi;

Prosessi, jossa RDB vaatii usein haarukoita tallentaakseen sen levylle alimerkinnän avulla.

Jos tietojoukko on suuri, haarukka voi viedä aikaa, ja jos tietojoukko on suuri, suorittimen suorituskyky on heikko, mikä voi aiheuttaa sen, että Redis ei pysty palvelemaan asiakkaita muutamaan millisekuntiin tai jopa sekuntiin.

Tietenkin voimme myös poistaa pysyvyyden käytöstä Rediksen suoritustehokkuuden parantamiseksi.

Jos et ole herkkä tietojen katoamiselle, voit tehdä tämän, kun asiakas muodostaa yhteyden config set save "" Komento poistaa pysyvyys käytöstä Redisissä.

redis.conf, jos sisäänsaveKommentoi kaikki asetukset alussa, ja myös pysyvyys poistetaan käytöstä, mutta näin ei yleensä tehdä.

Hope Chen Weiliang -blogi ( https://www.chenweiliang.com/ ) jakoi "Mikä on Redis RDB:n koko nimi? Redis RDB In-Memory Data Persistence Operation Mode", auttaa sinua.

Tervetuloa jakamaan tämän artikkelin linkki:https://www.chenweiliang.com/cwl-26677.html

Tervetuloa Chen Weiliangin blogin Telegram-kanavalle saadaksesi viimeisimmät päivitykset!

🔔 Saat ensimmäisenä arvokkaan "ChatGPT Content Marketing AI Toolin käyttöoppaan" kanavan ylähakemistoon! 🌟
📚 Tämä opas sisältää valtavasti arvoa, 🌟Tämä on harvinainen tilaisuus, älä missaa sitä! ⏰⌛💨
Jaa ja tykkää jos tykkäät!
Jakamasi ja tykkäyksesi ovat jatkuva motivaatiomme!

 

发表 评论

Sähköpostiosoitettasi ei julkaista. 必填 项 已 用 * 标注

Vieritä ylös