Tutvuge Redisega ja õppige selle võimsa andmesalve abil oma Node'i rakendusi optimeerima.

Veebirakenduse loomisel peaksite veenduma, et see on skaleeritav ja tõhus. Selleks peate arvestama mitme põhimõtte ja kontseptsiooniga.

Redis on üks paljudest tehnoloogiatest, mis aitab parandada teie veebirakenduste jõudlust. See pakub tähelepanuväärseid funktsioone, mida saate kasutada mis tahes veebirakenduse jõudluse parandamiseks.

Mis täpselt on Redis ja kuidas saate seda oma Node.js veebirakendustega kasutama hakata?

Mis on Redis ja millal peaksite seda kasutama?

Redis on avatud lähtekoodiga mälusisene võtmeväärtuste andmehoidla. See on paindlik tehnoloogia, mis võib toimida tööjärjekorra, andmebaasi, vahemälu, seansihalduri, sõnumivahendajana ja muuna.

Redise kiiruse, mitmekülgsuse ja kasutuslihtsuse kombinatsioon muudab selle tarkvaraarendaja ökosüsteemis väga väärtuslikuks tööriistaks.

Millal peaksite Redist kasutama?

Redis sobib hästi paljude ülesannete jaoks, kuid peaksite olema ettevaatlik, et seda kasutada ainult siis, kui see on mõttekas.

Peaksite kaaluma Redise kasutamist järgmistel juhtudel:

  • Vahemällu salvestamine: Redis on kõige populaarsem viis vahemälu juurutamiseks, et vältida andmebaaside koormust ja parandada üldist jõudlust.
  • Seansi juhtimine: Redisega on kasutajaseansside salvestamine ja haldamine autentimiseks ja olekuhalduseks väga lihtne.
  • Ajutine andmete salvestamine: Redis võimaldab teil andmeid salvestada ja teatud aja möödudes automaatselt kustutada. See muudab selle heaks tööriistaks ajutiste andmete salvestamiseks, näiteks JSON-i veebimärgid, tööjärjekorrad, jne.

Muudel juhtudel peaksite kaaluma Redise kasutamist, sealhulgas sõnumivahendaja rakendamist ja optimeerimist andmebaasitoimingud ning isegi andmestruktuuride (nt loendid, komplektid ja) tõhusat salvestamist ja juurdepääsu neile räsid.

Kuidas kasutada Redist koos Node.js-iga

Node.js on populaarne tehnoloogia tõhusate ja skaleeritavate serveripoolsete rakenduste loomiseks. Suure jõudluse ja mastaapsuse saavutamiseks saate seda kasutada koos tugitehnoloogiatega, nagu Redis.

Redis toetab mitut keelt. Saate seda kasutada andmete salvestamiseks PHP-s ja Golangi jaoks on suurepärased Redise kliendid. Kaks kõige populaarsemat Redise klienti Node.js-i jaoks on sõlm-redis ja ioredis.

Mõlemad paketid on saadaval aadressil npm ja neid on lihtne kasutada. Peamine erinevus seisneb selles sõlm-redis on ametlik klient, samas kui kogukond soovitab ioredis.

Redisega ühenduse loomine saidilt Node.js

Alustamiseks peab teie arvutisse olema installitud Redis ja seadistatud Node.js arenduskeskkond. Tutvuge paigaldusjuhendiga Redis.io Redise installimiseks Linuxi, macOS-i ja Windowsi jaoks.

Redisega ühenduse loomiseks peate oma projekti installima eelistatud Redise kliendi SDK. Sõltuvalt teie eelistustest (kasutame sõlm-redis), käivitage Redise kliendi installimiseks üks järgmistest käskudest:

npm install redis --save
npm install ioredis --save

Esimene käsk installib sõlm-redis, samal ajal kui teine ​​installib ioredis.

Äsja installitud kliendi konfigureerimiseks peate tagama, et Redis töötab. Seda saate teha lihtsalt käivitades redis-cli oma terminalis:

The ping käsk pingib serverile, et kinnitada, et see töötab, ja a PONG vastus CLI-s tähendab, et server töötab hästi. Nüüd loo a redis.js faili oma Node projekti ja kirjutage sinna Redise konfigureerimiseks järgmine kood:

konst redis = nõuda("redis")

// lähtestage vaikekonfiguratsiooni abil
konst RedisClient = redis.createClient()

konst ühendaRedis = asünkr () => {
// ühendage redisega
ootama RedisClient.connect()

// käepideme viga
RedisClient.on('viga', (err) => {
konsool.error(`Redisega ilmnes viga: ${err}`)
})

konsool.log("Redis ühendati edukalt...")
}

Ülaltoodud kood lähtestab rakenduses uue Redise kliendi. The looKlient paketi redis funktsioon võimaldab teil luua kliendi määratud parameetrite abil.

Saate määrata oma hosti, pordi, kasutajanime, parooli või ühenduse stringi või kasutada vaikeväärtusi. Näiteks, sõlm-redis hakkab tööle localhostis, pordis 6379, algselt.

Siin on paar võimalust, kuidas saate seda kasutada looKlient funktsioon:

// kasutades ühendusstringi
konst RedisClient = redis.createClient("rediss://127.0.0.1:6379")

// parameetriobjekti kasutamine
konst RedisClient = redis.createClient({
pesa: {
host: "127.0.0.1",
port: "6379"
},
kasutajanimi: "teie redis kasutajanimi",
parool: "teie parool"
})

Kasutage tootmises turvalisi Redise eksemplare. Kui see on nii, on teil kas turvaline URL string ühendamiseks või kasutage ülaltoodud parameetreid. Olenemata sellest, kumb on, pidage alati meeles, et volikirjad ei sisalda koodi ja kasutage selle asemel keskkonnamuutujaid.

Redise põhitoimingute sooritamine rakenduses Node.js

Järgmine kood loob ühenduse Redisega, kasutades ühenda Redis ülaltoodud funktsiooni ja demonstreerib mõningaid põhitoiminguid, mida saate Redis oma Node'i rakendustest teha.

konst testRedis = asünkr () => {
ootama connectRedis()

// Väärtuse määramine ja toomine
ootama RedisClient.set("nimi", "Timmy")
konst getCommand = ootama RedisClient.get("nimi")
konsool.log (getCommand)

// Kustutage väärtused kohe või ajastage need aeguma
// mõne sekundi jooksul
ootama RedisClient.del("nimi");
ootama RedisClient.setEx("asukoht", 60, "Lagos")

// Lükake loendi esi- või tagaküljele
ootama RedisClient.lPush("päevad", "esmaspäev")
ootama RedisClient.rPush("päevad", "teisipäev")
ootama RedisClient.lPush("päevad", "kolmapäev")
konst daysArray = ootama RedisClient.lRange("päevad", 0, -1)
// prindib [ 'kolmapäev', 'esmaspäev', 'teisipäev' ]
konsool.log (daysArray)

// Üksuse eemaldamine loendi tagant või esiosast
ootama RedisClient.rPop("päevad")
ootama RedisClient.lPop("päevad")
konst newDaysArray = ootama RedisClient.lRange("päevad", 0, -1)
// prindib [ 'esmaspäev' ]
konsool.log (newDaysArray)
}

testRedis()

Pange tähele kasutamist asünkr ja ootama siin. Seda seetõttu, et kõik funktsioonid töötavad asünkroonselt ja annavad lubadusi, nii et kui vajate nende tulemusi kohe, on oluline ootama neid.

Ülaltoodud kood näitab ainult mõningaid põhitoiminguid, mida saate Redis rakenduses Node.js teha. On veel palju käske ja mõisteid, mida tasub vaadata.

The Redise käsud REAADME jaotises, mis on leitud node-redisGitHub hoidla on hea koht kõigi teiste käskude ja nende töö leidmiseks.

Kasutage Redist tõhusate rakenduste loomiseks

Redise võimsuse kasutamine võimaldab teil arendajana luua väga tõhusaid serveripoolseid rakendusi. Redise mälus oleva andmesalvestuse ning ulatuslike andmestruktuuride ja käskude abil saavad rakendused saavutada märkimisväärseid jõudluse optimeerimisi.

Peaksite kindlasti kaaluma Redise integreerimist oma järgmisse Node.js-i rakendusse, et suurendada rakenduse jõudlust ja pakkuda paremat kasutuskogemust.