NodeJS

NodeJS med Redis

NodeJS med Redis
Redis bruges i vid udstrækning som en cacheserver. Til tider bruges Redis også som en database. Det gemmer dataene direkte i en computers hukommelse (RAM). Fordelen er, at den kan få adgang til dataene meget hurtigt. Ulempen er, at de data, den gemmer, er midlertidige. Hvis du genstarter din computer, er alle data væk.

I denne artikel vil jeg vise dig, hvordan du bruger Redis med Node.js. Jeg bruger Node.js 10.x på Debian 9 Stræk i denne artikel. Men enhver moderne version af Node.js skal arbejde. Så lad os komme i gang. For at komme i gang skal du have følgende krav:

Du skal kunne finde artikler om installation af Node.js og NPM på din ønskede Linux-distribution på LinuxHint.com.  Jeg har skrevet en dedikeret artikel om installation af Redis på Ubuntu / Debian.

Starter Redis:

Du kan kontrollere, om redis tjenesten kører med følgende kommando:

$ sudo systemctl status redis

Som du kan se, redis tjenesten kører.

Hvis redis tjenesten kører ikke i dit tilfælde, start den med følgende kommando:

$ sudo systemctl start redis

Initialisering af projektmappen:

Opret først et projektmappe (lad os kalde det node-redis) med følgende kommando:

$ mkdir ~ / node-redis

Gå nu til projektmappen ~ / node-redis

$ cd ~ / node-redis

Opret nu en pakke.json fil:

$ npm init -y

Installation af Redis Node.js-modul:

Der er mange Redis-klienter til Node.js. Den officielle hjemmeside for Redis anbefaler redis. Du kan nemt installere redis Node.js-modul ved hjælp af NPM (Node Package Manager).

At installere redis Node.js-modul, kør følgende NPM-kommando:

$ npm installer redis --save

redis Node.js-modulet skal installeres.

Opretter forbindelse til Redis ved hjælp af Node.js:

I dette afsnit vil jeg vise dig, hvordan du opretter forbindelse til Redis-datalager ved hjælp af Node.js.

Opret først en ny fil Opret forbindelse.js i din projektmappe, og skriv følgende kommandoer i den:

Her importerer linje 1 redis modul.

Linje 2 opretter en Redis-klient. Da jeg kører Redis på samme computer som Node.js-programmer kører, jeg behøvede ikke at angive værtsnavnet eller IP-adressen og porten, hvor Redis-serveren kører. Hvis du kører Redis-server på en anden computer eller server, skal du angive det her.

Lad os for eksempel sige, at din Redis-server kører på port 6379 på en computer, der har IP-adressen 192.168.10.87, så ville du skrive linje 2 som:

lad klient = redis.createClient (6379, '192.168.10.87 ');

Linie 4-6 bruges til at udskrive en besked til konsollen, hvis vi kan oprette forbindelse til Redis-serveren.

Linie 9-10 bruges til at udskrive en besked til konsollen, hvis vi ikke kan oprette forbindelse til Redis-serveren.

Kør nu Opret forbindelse.js Node.js-script som følger:

$ node-forbindelse.js

Som du kan se, har jeg forbindelse til Redis-serveren.

Lagring af data i Redis ved hjælp af node.js:

I dette afsnit vil jeg vise dig, hvordan du gemmer data (nøgleværdipar) i Redis-datalager med Node.js

Opret først sæt1.js fil i din projektmappe, og skriv følgende linjer i den:

Her er linje 1 og 2 de samme som i Opret forbindelse.js.

På linje 4 indstillede jeg tilbagekaldsfunktionen til Opret forbindelse begivenhed til storeData. Så når vores Redis-klient er tilsluttet Redis-serveren, er funktionen storeData Hedder.

På linje 6-10, tilbagekaldsfunktionen storeData er defineret.

På linje 7 og 8 brugte jeg sæt (nøgle, værdi) metode til RedisClient objekt for at indstille nøglen navn og Land at sætte pris på Mary Smith og USA henholdsvis.

Kør nu sæt1.js som følger:

$ node-sæt1.js

Som du kan se, er nøgleværdipar indstillet.

Henter data fra Redis ved hjælp af node.js

I dette afsnit vil jeg vise dig, hvordan du henter data fra Redis-datalager ved hjælp af Node.js.

Opret først en ny fil get1.js i din projektmappe, og skriv følgende linjer:

Her på linje 4, getData funktion er indstillet som en tilbagekaldsfunktion til Opret forbindelse begivenhed af RedisClient.

På linje 6-9 er den getData funktion er defineret.

På linje 7 ringede jeg til få (nøgle, tilbagekald) metode til RedisClient objekt. navn her er nøgle af den værdi, du vil hente. få() metoden kalder printVærdi tilbagekaldsfunktion, før den er færdig.

På linje 11-18 er fejlen første stil tilbagekaldsfunktion printValue () er defineret. Den accepterer to argumenter, fejl og resultat. Hvis der opstår en fejl, udskrives den på konsollen, og funktionen afsluttes. Hvis der ikke er nogen fejl, udskrives værdien for den bestemte nøgle på konsollen.

På linje 8 sker det samme.

Kør nu get1.js som følger:

$ node get1.js

Som du kan se, er værdierne for tasterne navn og Land hentes fra Redis-datalageret.

Lagring af objekter i Redis med node.js:

Du kan gemme JavaScript-objekter i Redis-datalager.

Opret først en ny fil sæt2.js i dit projektkatalog, og skriv følgende linjer i det.

Her er alt det samme som i sæt1.js fil, som jeg allerede har forklaret tidligere. Den eneste forskel er, jeg brugte klient.hmset (nøgle, objekt) metode til RedisClient objekt i setData () tilbagekaldsfunktion.

I linje 7-10 brugte jeg klient.hmset () metode til at gemme et JavaScript-objekt i Redis-datalageret mod nøglen C011.

Kør nu sæt2.js Node.js-script som følger:

$ node sæt2.js

Som du kan se, gemmes objektet.

Henter objekter fra Redis med node.js:

I dette afsnit vil jeg vise dig, hvordan du henter objekter fra Redis-datalager.

Knytnæve, opret en ny fil get2.js i dit projektkatalog, og skriv følgende linjer i det.

Her er alt det samme som i get1.js script jeg forklarede tidligere.

Du kan nemt hente et JavaScript-objekt med klient.hgetall (nøgle, tilbagekald) metode til RedisClient som i linje 7-9.

Kør nu get2.js Node.js-script som følger:

$ node get2.js

Som du kan se, hentes JavaScript-objektet fra Redis-datalageret.

Jeg viste dig, hvordan du konfigurerer Redis med Node.js i denne artikel. Nu skal du være i stand til at læse redis Node.js modul dokumentation på http: // redis.js.org og lær mere om det. Tak, fordi du læste denne artikel.

Open Source-porte med kommercielle spilmotorer
Gratis, open source og cross-platform spilmotorgendringer kan bruges til at spille gamle såvel som nogle af de temmelig nylige spiltitler. Denne artik...
Bedste kommandoliniespil til Linux
Kommandolinjen er ikke kun din største allierede, når du bruger Linux, den kan også være kilde til underholdning, fordi du kan bruge den til at spille...
Bedste apps til Gamepad Mapping til Linux
Hvis du kan lide at spille spil på Linux med en gamepad i stedet for et typisk tastatur- og musesystem, er der nogle nyttige apps til dig. Mange pc-sp...