Redis®*: Exemple de code Redis avec Node.js

Cette documentation fait partie du guide Classer les utilisateurs en temps réel. Consultez le guide complet ici : Apprenez à classer 2 millions d'utilisateurs par score en temps réel avec Redis.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution Redis cloud prête à l'emploi offrant de nombreux avantages, notamment :

  • Interface web Redis Commander incluse.
  • Taille et transferts de messages illimités.
  • Mises à jour simplifiées en un clic.
  • Performance optimale et sécurité renforcée grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il suffit de 5 minutes pour essayer la solution d'hébergement Redis cloud de Stackhero !

Après avoir validé le concept dans Redis Commander, il est temps d'intégrer Redis dans du code réel. Notre client utilise Node.js et voici un exemple utilisant ioredis comme client :

const Redis = require('ioredis');

(async () => {
  // Définir les identifiants Redis
  // Si vous utilisez Stackhero, vous les trouverez sur le tableau de bord Stackhero
  const redis = new Redis({
    host: '<redisServerHost>',
    password: '<redisServerPassword>',
    port: <PORT_TLS>, // <PORT_CLEAR> est pour les connexions non sécurisées et <PORT_TLS> est pour TLS. TLS doit être utilisé.
    tls: {}, // Fournir un objet vide pour activer TLS
    lazyConnect: true
  });

  // Se connecter à Redis
  await redis.connect();

  // Ajouter des utilisateurs
  await redis.zadd('usersScores', 11, 'userId1');
  await redis.zadd('usersScores', 54, 'userId2');
  await redis.zadd('usersScores', 24, 'userId3');

  // Récupérer le score de userId1
  const score = await redis.zscore('usersScores', 'userId1');
  console.log('userId1 a ' + score + ' points');

  // Récupérer la position de classement de userId1
  const rankPosition = await redis.zrevrank('usersScores', 'userId1');
  console.log('userId1 est classé à la position ' + rankPosition);

  // Se déconnecter de Redis
  await redis.disconnect();
})();

Ce simple mais puissant extrait de code est idéal pour gérer les données de classement en temps réel.