Susipažinkite su „Redis“ ir sužinokite, kaip optimizuoti „Node“ programas naudodami šią galingą duomenų saugyklą.
Kai kuriate žiniatinklio programą, turėtumėte įsitikinti, kad ji yra keičiamo dydžio ir efektyvi. Norėdami tai padaryti, turėsite atsižvelgti į keletą principų ir sąvokų.
„Redis“ yra viena iš daugelio technologijų, galinčių padėti pagerinti jūsų žiniatinklio programų našumą. Jis siūlo nuostabias funkcijas, kurias galite naudoti norėdami pagerinti bet kurios žiniatinklio programos našumą.
Taigi, kas tiksliai yra Redis ir kaip pradėti jį naudoti su Node.js žiniatinklio programomis?
Kas yra Redis ir kada jį naudoti?
„Redis“ yra atvirojo kodo, atmintyje, raktinių verčių duomenų saugykla. Tai lanksti technologija, kuri gali veikti kaip darbo eilė, duomenų bazė, talpykla, seansų tvarkyklė, pranešimų tarpininkas ir kt.
Redis greičio, universalumo ir naudojimo paprastumo derinys daro jį labai vertingu įrankiu programinės įrangos kūrėjų ekosistemoje.
Kada turėtumėte naudoti Redis?
„Redis“ puikiai tinka daugeliui užduočių, tačiau turėtumėte būti atsargūs, naudodami jį tik tada, kai tai prasminga.
Turėtumėte apsvarstyti galimybę naudoti Redis šiais atvejais:
- Talpykla: Redis yra populiariausias talpyklos diegimo būdas, padedantis išvengti duomenų bazių apkrovos ir pagerinti bendrą našumą.
- Seanso valdymas: Su Redis labai lengva saugoti ir valdyti vartotojo seansus autentifikavimui ir būsenos valdymui.
- Laikinas duomenų saugojimas: Redis leidžia saugoti duomenis ir automatiškai juos ištrinti praėjus tam tikram laikui. Dėl to jis yra geras įrankis laikiniems duomenims saugoti, pvz JSON žiniatinklio prieigos raktai, darbo eilėsir kt.
Kiti atvejai, kuriais turėtumėte apsvarstyti galimybę naudoti Redis, yra pranešimų tarpininko įdiegimas, optimizavimas duomenų bazės operacijas ir netgi efektyvų duomenų struktūrų, tokių kaip sąrašai, rinkiniai ir, saugojimą bei prieigą maišos.
Kaip naudoti Redis su Node.js
Node.js yra populiari technologija, skirta kurti efektyvias ir keičiamo dydžio serverio programas. Galite naudoti jį kartu su pagalbinėmis technologijomis, tokiomis kaip Redis, kad pasiektumėte didelį našumą ir mastelį.
Redis palaiko kelias kalbas. Galite juo naudotis duomenų saugojimui PHP ir Golangui yra puikių Redis klientų. Du populiariausi „Redis“ klientai, skirti Node.js, yra mazgas-redis ir ioredis.
Abu paketai yra prieinami per npm ir yra paprasta naudoti. Pagrindinis skirtumas yra tas mazgas-redis yra oficialus klientas, o bendruomenė rekomenduoja ioredis.
Prisijungimas prie Redis iš Node.js
Norėdami pradėti, kompiuteryje turi būti įdiegtas Redis ir nustatyta Node.js kūrimo aplinka. Peržiūrėkite diegimo vadovą Redis.io norėdami įdiegti „Redis“ „Linux“, „MacOS“ ir „Windows“.
Savo projekte turite įdiegti pageidaujamą Redis kliento SDK, kad galėtumėte prisijungti prie Redis. Priklausomai nuo jūsų pageidavimų (naudosime mazgas-redis), paleiskite vieną iš toliau pateiktų komandų, kad įdiegtumėte Redis klientą:
npm įdiegti redis --save
npm įdiegti ioredis --save
Įdiegta pirmoji komanda mazgas-redis, o antrasis įdiegiamas ioredis.
Norėdami sukonfigūruoti naujai įdiegtą klientą, turite įsitikinti, kad Redis veikia. Tai galite padaryti tiesiog pradėdami redis-cli savo terminale:
The ping komanda ping serveriui patvirtina, kad jis veikia, ir a PONGAS atsakymas CLI reiškia, kad serveris veikia gerai. Dabar sukurkite a redis.js failą savo Node projekte ir parašykite jame šį kodą, kad sukonfigūruotumėte Redis:
konst redis = reikalauti("redis")
// inicijuoti naudojant numatytąją konfigūraciją
konst RedisClient = redis.createClient()konst prisijungtiRedis = async () => {
// prisijungti prie redis
laukti RedisClient.connect()// tvarkyklės klaida
RedisClient.on('klaida', (err) => {
konsolė.error(„Redis“ įvyko klaida: ${err}`)
})
konsolė.log(„Redis sėkmingai prisijungė...“)
}
Aukščiau pateiktas kodas inicijuoja naują Redis klientą programoje. The sukurtiKlientą Redis paketo funkcija leidžia sukurti klientą naudojant nurodytus parametrus.
Galite nurodyti pagrindinį kompiuterį, prievadą, vartotojo vardą, slaptažodį arba ryšio eilutę arba naudoti numatytąsias reikšmes. Pavyzdžiui, mazgas-redis pradės veikti localhost, prievade 6379, pagal numatytuosius nustatymus.
Štai keletas būdų, kaip galite naudoti sukurtiKlientą funkcija:
// naudojant ryšio eilutę
konst RedisClient = redis.createClient("rediss://127.0.0.1:6379")
// naudojant parametrų objektą
konst RedisClient = redis.createClient({
lizdas: {
šeimininkas: "127.0.0.1",
prievadas: "6379"
},
Vartotojo vardas: "jūsų redis vartotojo vardas",
Slaptažodis: "Jūsų slaptažodis"
})
Gamyboje naudokite saugius Redis egzempliorius. Tokiu atveju jūs arba turite saugų URL prisijungimo eilutę arba naudokite aukščiau nurodytus parametrus. Kad ir kaip būtų, visada nepamirškite, kad kredencialai nebūtų įtraukti į kodą, o vietoj jų naudokite aplinkos kintamuosius.
Pagrindinių Redis operacijų atlikimas Node.js
Šis kodas prisijungia prie Redis naudojant prisijungtiRedis aukščiau pateiktą funkciją ir parodo kai kurias pagrindines operacijas, kurias galite atlikti Redis iš savo Node programų.
konst testRedis = async () => {
laukti connectRedis()// Nustatykite ir gaukite reikšmę
laukti RedisClient.set("vardas", "Timas")
konst getCommand = laukti RedisClient.get("vardas")
konsolė.log (getCommand)// Nedelsdami ištrinkite reikšmes arba nustatykite jų galiojimo laiką
// per kelias sekundes
laukti RedisClient.del("vardas");
laukti RedisClient.setEx("vieta", 60, "Lagosas")// Paspauskite sąrašo priekį arba galą
laukti RedisClient.lPush("dienos", "pirmadienis")
laukti RedisClient.rPush("dienos", "antradienis")
laukti RedisClient.lPush("dienos", "trečiadienis")
konst daysArray = laukti RedisClient.lRange("dienos", 0, -1)
// spausdina [ 'trečiadienis', 'pirmadienis', 'antradienis' ]
konsolė.log (daysArray)// Pašalinkite elementą iš sąrašo galo arba priekio
laukti RedisClient.rPop("dienos")
laukti RedisClient.lPop("dienos")
konst newDaysArray = laukti RedisClient.lRange("dienos", 0, -1)
// spausdina [ 'pirmadienis' ]
konsolė.log (newDaysArray)
}
testRedis()
Atkreipkite dėmesį į naudojimą async ir laukti čia. Taip yra todėl, kad visos funkcijos veikia asinchroniškai ir grąžina pažadus, todėl jei jų rezultatų reikia nedelsiant, svarbu laukti juos.
Aukščiau pateiktame kode rodomos tik kai kurios pagrindinės operacijos, kurias galite atlikti Redis iš Node.js programos. Yra daug daugiau komandų ir sąvokų, į kurias verta atkreipti dėmesį.
The Redis komandos skyriuje README rasti mazgas-redisGitHub saugykla yra gera vieta rasti visas kitas komandas ir ką jos daro.
Naudokite Redis, kad sukurtumėte efektyvias programas
Pasinaudoję „Redis“ galia, jūs, kaip kūrėjas, galite kurti labai efektyvias serverio programas. Naudodami „Redis“ atmintyje esančią duomenų saugyklą ir plačias duomenų struktūras bei komandas, programos gali puikiai optimizuoti našumą.
Neabejotinai turėtumėte apsvarstyti galimybę integruoti Redis į kitą Node.js programą, kad padidintumėte programos našumą ir pagerintumėte naudotojo patirtį.