Redis®*: Redis-Codebeispiel mit Node.js

Diese Dokumentation ist Teil des Benutzer in Echtzeit einstufen-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Erfahren Sie, wie Sie 2 Millionen Benutzer in Echtzeit nach Punkten mit Redis einstufen können.

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Redis Cloud Lösung mit zahlreichen Vorteilen, darunter:

  • Redis Commander Web-UI inklusive.
  • Unbegrenzte Nachrichtengröße und Übertragungen.
  • Mühelose Updates mit nur einem Klick.
  • Optimale Performance und robuste Sicherheit durch eine private und dedizierte VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Redis Cloud Hosting Lösung von Stackhero auszuprobieren!

Nach der Validierung des Konzepts in Redis Commander ist es an der Zeit, Redis in realen Code zu integrieren. Unser Kunde verwendet Node.js und unten ist ein Beispiel mit ioredis als Client:

const Redis = require('ioredis');

(async () => {
  // Redis-Anmeldedaten festlegen
  // Wenn Sie Stackhero verwenden, finden Sie diese im Stackhero-Dashboard
  const redis = new Redis({
    host: '<redisServerHost>',
    password: '<redisServerPassword>',
    port: <PORT_TLS>, // <PORT_CLEAR> ist für unverschlüsselte Verbindungen und <PORT_TLS> ist für TLS. TLS sollte verwendet werden.
    tls: {}, // Ein leeres Objekt bereitstellen, um TLS zu aktivieren
    lazyConnect: true
  });

  // Verbindung zu Redis herstellen
  await redis.connect();

  // Benutzer hinzufügen
  await redis.zadd('usersScores', 11, 'userId1');
  await redis.zadd('usersScores', 54, 'userId2');
  await redis.zadd('usersScores', 24, 'userId3');

  // Score von userId1 abrufen
  const score = await redis.zscore('usersScores', 'userId1');
  console.log('userId1 hat ' + score + ' Punkte');

  // Rangposition von userId1 abrufen
  const rankPosition = await redis.zrevrank('usersScores', 'userId1');
  console.log('userId1 ist auf Position ' + rankPosition + ' eingestuft');

  // Verbindung zu Redis trennen
  await redis.disconnect();
})();

Dieses einfache, aber leistungsstarke Code-Snippet ist ideal für die Verwaltung von Echtzeit-Ranking-Daten.