NodeJS

NodeJS с Redis

NodeJS с Redis
Redis се използва широко като кеширащ сървър. Понякога Redis се използва и като база данни. Той съхранява данните директно в паметта на компютъра (RAM). Предимството е, че той има достъп до данните много бързо. Недостатъкът е, че данните, които съхранява, са временни. Ако рестартирате компютъра си, всички данни ще изчезнат.

В тази статия ще ви покажа как да използвате Redis с Node.js. Ще използвам Node.js 10.x на Debian 9 Stretch в тази статия. Но всяка модерна версия на Node.js трябва да работи. И така, нека започнем. За да започнете, трябва да имате следните изисквания:

Трябва да можете да намерите статии за инсталиране на Node.js и NPM на желаната от вас дистрибуция на Linux на LinuxHint.com.  Написах специална статия за инсталиране на Redis на Ubuntu / Debian.

Стартиране на Redis:

Можете да проверите дали redis услугата се изпълнява със следната команда:

$ sudo systemctl статус redis

Както виждаш, redis услугата работи.

Ако redis услугата не се изпълнява във вашия случай, стартирайте я със следната команда:

$ sudo systemctl стартира redis

Инициализиране на директорията на проекти:

Първо, създайте директория на проекта (нека го наречем възел-редис) със следната команда:

$ mkdir ~ / node-redis

Сега отидете в директорията на проекта ~ / възел-редис

$ cd ~ / node-redis

Сега създайте a пакет.json файл:

$ npm init -y

Инсталиране на Redis Node.js модул:

Има много клиенти на Redis за Node.js. Официалният уебсайт на Redis препоръчва redis. Можете лесно да инсталирате redis Възел.js модул, използващ NPM (Node Package Manager).

Да инсталираш redis Възел.js, изпълнете следната команда NPM:

$ npm инсталирайте redis --save

redis Възел.js модул трябва да бъде инсталиран.

Свързване с Redis чрез Node.js:

В този раздел ще ви покажа как да се свържете с хранилището за данни Redis с помощта на Node.js.

Първо създайте нов файл свържете.js в директорията на вашия проект и въведете следните команди в него:

Тук ред 1 импортира redis модул.

Ред 2 създава Redis клиент. Тъй като аз изпълнявам Redis на същия компютър като Node.js програми се изпълняват, не трябваше да посочвам името на хоста или IP адреса и порта, където работи сървърът Redis. Ако използвате сървър Redis на друг компютър или сървър, ще трябва да го посочите тук.

Да приемем например, че вашият сървър Redis работи на порт 6379 на компютър, който има IP адрес 192.168.10.87, тогава ще напишете ред 2 като:

нека клиент = redis.createClient (6379, '192.168.10.87 ');

Ред 4-6 се използва за отпечатване на съобщение на конзолата, ако можем да се свържем със сървъра Redis.

Ред 9-10 се използва за отпечатване на съобщение на конзолата, ако не можем да се свържем със сървъра Redis.

Сега стартирайте свържете.js Възел.js, както следва:

$ node свързване.js

Както можете да видите, аз съм свързан със сървъра Redis.

Съхраняване на данни в Redis с помощта на Node.js:

В този раздел ще ви покажа как да съхранявате данни (двойки ключ-стойност) в хранилището на данни Redis с Node.js

Първо, създайте set1.js файл в директорията на вашия проект и въведете следните редове в него:

Тук редове 1 и 2 са същите като в свържете.js.

На ред 4 зададох функцията за обратно извикване на свържете събитие до storeData. Така че, когато нашият Redis клиент е свързан към Redis сървъра, функцията storeData е наречен.

На линия 6-10, функцията за обратно повикване storeData е дефиниран.

На ред 7 и 8 използвах набор (ключ, стойност) метод на RedisClient обект за задаване на ключа име и страна да оценявам Мери Смит и САЩ съответно.

Сега тичай set1.js както следва:

$ node set1.js

Както можете да видите, двойките ключ-стойност са зададени.

Извличане на данни от Redis с помощта на Node.js

В този раздел ще ви покажа как да извлечете данни от хранилището на данни Redis с помощта на Node.js.

Първо създайте нов файл get1.js в директорията на вашия проект и въведете следните редове:

Тук, на ред 4, getData функция е зададена като функция за обратно извикване за свържете събитие от RedisClient.

На линия 6-9, getData функция е дефинирана.

На линия 7 се обадих на получи (ключ, обратно повикване) метод на RedisClient обект. име тук е ключ на стойността, която искате да извлечете. получи () метод извиква printValue функция за обратно извикване, преди да приключи.

На ред 11-18, функцията за обратно извикване за първи стил за грешка printValue () е дефиниран. Приема 2 аргумента, грешка и резултат. Ако възникне някаква грешка, тя се отпечатва на конзолата и функцията излиза. Ако няма грешка, тогава стойността за определен ключ се отпечатва на конзолата.

На ред 8 се случва същото.

Сега тичай get1.js както следва:

$ възел get1.js

Както можете да видите, стойностите за ключовете име и страна се извлича от хранилището за данни Redis.

Съхраняване на обекти в Redis с Node.js:

Можете да съхранявате обекти на JavaScript в хранилището за данни Redis.

Първо създайте нов файл set2.js в директорията на вашия проект и въведете следните редове в него.

Тук всичко е същото като в set1.js файл, който вече обясних по-рано. Единствената разлика е, че използвах клиент.hmset (ключ, обект) метод на RedisClient обект в setData () функция за обратно извикване.

В ред 7-10 използвах клиент.hmset () метод за съхраняване на обект на JavaScript в хранилището на данни Redis срещу ключа C011.

Сега тичай set2.js Възел.js, както следва:

$ node set2.js

Както можете да видите, обектът се съхранява.

Извличане на обекти от Redis с Node.js:

В този раздел ще ви покажа как да извличате обекти от хранилището за данни Redis.

Юмрук, създайте нов файл get2.js в директорията на вашия проект и въведете следните редове в него.

Тук всичко е същото като в get1.js скрипт, който обясних по-рано.

Можете да извлечете JavaScript обект много лесно с клиент.hgetall (ключ, обратно повикване) метод на RedisClient, както в ред 7-9.

Сега стартирайте get2.js възел.js, както следва:

$ възел get2.js

Както можете да видите, обектът JavaScript се извлича от хранилището за данни Redis.

Показах ви как да настроите Redis с Node.js в тази статия. Сега трябва да можете да прочетете redis Възел.js модулна документация на http: // redis.js.org и научете повече за това. Благодаря, че прочетохте тази статия.

Как да използвам AutoKey за автоматизиране на Linux игри
AutoKey е програма за автоматизация на настолни компютри за Linux и X11, програмирана в Python 3, GTK и Qt. Използвайки неговата функционалност за скр...
Как да покажа брояч на FPS в игрите на Linux
Linux игрите получиха голям тласък, когато Valve обяви поддръжка на Linux за Steam клиент и техните игри през 2012 г. Оттогава много AAA и независими ...
Как да изтеглите и пуснете Civilization VI на Сид Майер на Linux
Въведение в играта Civilization 6 е модерен поглед върху класическата концепция, въведена в поредицата от игрите Age of Empires. Идеята беше доста про...