Heim  >  Artikel  >  Datenbank  >  Ausführliche Erläuterung der Anwendung von Redis in Node.js

Ausführliche Erläuterung der Anwendung von Redis in Node.js

WBOY
WBOYOriginal
2023-06-20 08:49:431662Durchsuche

Redis ist ein effizienter speicherbasierter Cache und eine effiziente Datenbank. Es ist schnell, zuverlässig und einfach zu verwenden. Es wird häufig in Webanwendungen verwendet und unterstützt eine Vielzahl von Datentypen, wie z. B. Zeichenfolgen, Hash-Tabellen, Listen, Mengen, geordnete Mengen usw. Node.js erfreut sich als ereignisgesteuerte asynchrone JavaScript-Laufzeitumgebung zunehmender Beliebtheit in der Webentwicklung. Redis stellt den Node.js-API-Treiber und einige praktische Node.js-Bibliotheken bereit, wodurch Redis in der Node.js-Entwicklung sehr häufig verwendet wird.

Warum Redis wählen?

Bevor wir die Anwendung von Redis in Node.js vorstellen, werfen wir zunächst einen Blick darauf, warum wir uns für Redis entschieden haben. Das Aufkommen von Redis soll das Problem der Leistungsengpässe lösen, die durch die allmähliche Zunahme des Zugriffs auf relationale Datenbanken verursacht werden. Das Merkmal von Redis besteht darin, dass es den Hauptthread zum Abschließen von Lese- und Schreibvorgängen verwendet und so einen effizienten Betrieb gewährleistet. Redis speichert Daten im Speicher, was sehr hohe Lese- und Schreibgeschwindigkeiten ermöglicht und die Zeit für E/A-Vorgänge und Festplattenzugriffe verkürzt. In Situationen mit hoher Parallelität kann Redis Anfragen besser verarbeiten und die Systemstabilität und Reaktionsgeschwindigkeit verbessern.

Die Verwendung von Node.js und Redis ermöglicht uns die einfache Durchführung von Caching- und Datenspeichervorgängen in Node.js, ohne eine Verbindung zu einer komplexen Datenbank herzustellen. Darüber hinaus kann die Verwendung von Redis auch die Leistung und Skalierbarkeit verbessern und ist einfach bereitzustellen und zu betreiben.

Redis-Treiber

Redis bietet mehrere Redis-Treiber für die Verwendung mit der Node.js-API. Die am häufigsten verwendeten sind Node-Redis und Ioredis. Node-Redis ist derzeit der beliebteste und stabilste Treiber, während Ioredis übergeordnete Funktionen wie Sentinels und Cluster-Management bereitstellt und auch mehr Redis-Befehle unterstützt. Unabhängig davon, welcher Redis-Treiber verwendet wird, stellen sie alle eine Verbindung zwischen Node.js und Redis her und erleichtern so das Lesen und Schreiben von Daten.

Redis installieren und konfigurieren

Um Redis und Node.js zu verwenden, müssen Sie zuerst Redis installieren und dann den Redis-Treiber in Node.js konfigurieren. In Windows-Systemen können Sie zu http://redis.io/download gehen, um das Installationspaket herunterzuladen, und in Unix-Systemen können Sie es mit dem folgenden Befehl installieren:

$ wget http://redis.googlecode.com/files/redis-2.4.16.tar.gz
$ tar xvzf redis-2.4.16.tar.gz
$ cd redis-2.4.16
$ make

Nachdem Redis erfolgreich installiert wurde, können Sie das installieren Node.js Redis-Treiber. Die Installation des Redis-Treibers in Node.js ist einfach. Verwenden Sie einfach den Befehl npm install in der Befehlszeile. Um beispielsweise Node-Redis zu installieren, können Sie den folgenden Befehl verwenden:

$ npm install redis

Redis-Grundoperationen

Der erste Schritt besteht darin, eine Verbindung mit dem Redis-Server herzustellen. Das Node-Redis-Modul in Node.js kann mithilfe des folgenden Codes eine Verbindung herstellen:

var redis = require('redis');
var client = redis.createClient();

Dadurch können wir grundlegende Vorgänge auf dem Redis-Server ausführen, die in der JavaScript-Sprache in Node.js geschrieben sind. Werfen wir einen Blick darauf, wie Node.js und Redis für grundlegende Vorgänge verwendet werden.

Wert festlegen

Im Folgenden wird ein Schlüssel-Wert-Paar in Redis eingerichtet, um zu demonstrieren, wie Node.js zum Ausführen grundlegender Vorgänge mit Redis verwendet wird.

client.set('key', 'value', function(err, response) {
  console.log(response);
});

Bei der Set-Operation hier ist der erste Parameterschlüssel der Schlüsselname, der festgelegt werden muss, und der zweite Parameterwert ist der Wert, der festgelegt werden muss. Als nächstes können wir die Rückruffunktion verwenden, um den Rückgabewert vom Redis-Server zu erhalten. Bei einfachen Vorgängen ist der Rückgabewert normalerweise in Ordnung.

Den Wert abrufen

Ein Schlüssel-Wert-Paar in Redis zu erhalten ist sehr einfach. Mit dem folgenden Code kann das im vorherigen Schritt festgelegte Schlüssel-Wert-Paar abgerufen und das Ergebnis an die Konsole ausgegeben werden.

client.get('key', function(err, response) {
  console.log(response);
});

Der erste Parameterschlüssel in der Get-Operation ist hier der abzurufende Schlüsselname, und der zweite Parameter ist die Rückruffunktion, mit der der vom Redis-Server zurückgegebene Wert empfangen wird.

Ablaufzeit festlegen

Redis-Schlüssel-Wert-Paare können eine Ablaufzeit festlegen, was bedeutet, dass ein bestimmtes Schlüssel-Wert-Paar innerhalb der angegebenen Zeit abläuft. Der folgende Code richtet ein Schlüssel-Wert-Paar ein und legt die Ablaufzeit auf fünf Minuten fest.

client.set('key', 'value', 'EX', 300, function(err, response) {
  console.log(response);
});

Das „EX“ hier ist der integrierte Befehl von Redis. Die Zahl nach . stellt die festzulegende Ablaufzeit in Sekunden dar. Nach Durchführung der oben genannten Vorgänge läuft dieses Schlüssel-Wert-Paar automatisch nach fünf Minuten ab.

Schlüssel-Wert-Paare löschen

Obwohl Redis eine Möglichkeit bietet, die Ablaufzeit festzulegen, müssen wir in einigen Fällen möglicherweise ein Schlüssel-Wert-Paar manuell löschen. Der folgende Code zeigt, wie man ein Schlüssel-Wert-Paar mit Node.js und Redis löscht.

client.del('key', function(err, response) {
  console.log(response);
});

Der erste Parameterschlüssel in der Del-Operation ist hier der Schlüsselname, der gelöscht werden muss, und der zweite Parameter ist die Rückruffunktion, die zum Empfangen des vom Redis-Server zurückgegebenen Werts verwendet wird.

Das Obige sind die grundlegendsten Einstellungen, Erfassungs- und Löschvorgänge von Redis. Die Kombination von Node.js und Redis macht diese Vorgänge sehr einfach. Darüber hinaus unterstützt Redis auch weitere Operationstypen, einschließlich Listen, Hash-Tabellen, Sätze usw. Wir können diese Operationen in Node.js über den Redis-Treiber ausführen.

Node Redis Cluster

Um die Verfügbarkeit von Redis zu verbessern, wird ein Cluster-Modus in Bezug auf Sharding und Replikation übernommen, der die Integration mehrerer Redis-Knoten zu einem Redis-Cluster ermöglicht. Die Verwendung des Redis-Clusters in Node.js ist fast dieselbe wie die Verwendung eines einzelnen Redis-Knotens. Wir können die von node-redis bereitgestellte API verwenden, um den Redis-Cluster zu betreiben.

Bei Verwendung des Redis-Clusters in Node.js muss der ioredis-Treiber verwendet werden. Der Beispielcode lautet wie folgt:

const Redis = require('ioredis');

const nodes = [
  { port: 6379, host: '172.16.0.1' },
  { port: 6379, host: '172.16.0.2' },
  { port: 6379, host: '172.16.0.3' },
  { port: 6379, host: '172.16.0.4' },
  { port: 6379, host: '172.16.0.5' },
  { port: 6379, host: '172.16.0.6' },
];

const redis = new Redis.Cluster(nodes);

Das Obige ist ein Codebeispiel für die Verwendung des Redis-Clusters in Node.js. Um den Redis-Cluster zu verwenden, geben Sie einfach mehrere von Redis verwaltete Instanzen an.

Zusammenfassung

Durch die Einleitung dieses Artikels können wir feststellen, dass die Verwendung von Redis in Node.js sehr praktisch und praktisch ist. Node.js bietet viele hervorragende Redis-Treiber, um unsere Interaktion mit Redis zu vereinfachen. Die Effizienz und Skalierbarkeit von Redis machen es zu einer weit verbreiteten Caching- und Datenbanklösung in Node.js. Sie müssen nur die in diesem Artikel vorgestellten Schritte befolgen, um Redis einfach in Ihre Node.js-Anwendung zu integrieren und die Leistung und Reaktionsgeschwindigkeit Ihrer Webanwendung zu verbessern.

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Anwendung von Redis in Node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn