Redis®*: Ejemplo de código Redis usando Node.js

Esta documentación forma parte de la guía Clasificar usuarios en tiempo real. Consulte la guía completa aquí: Aprenda a clasificar 2 millones de usuarios por puntuación en tiempo real usando Redis.

👋 ¡Bienvenido a la documentación de Stackhero!

Stackhero ofrece una solución Redis cloud lista para usar que proporciona una serie de beneficios, incluyendo:

  • Interfaz web Redis Commander incluida.
  • Tamaño y transferencias de mensajes ilimitados.
  • Actualizaciones sin esfuerzo con solo un clic.
  • Rendimiento óptimo y seguridad robusta gracias a una VM privada y dedicada.

Ahorra tiempo y simplifica tu vida: ¡solo toma 5 minutos probar la solución de alojamiento Redis cloud de Stackhero!

Después de validar el concepto en Redis Commander, es hora de integrar Redis en código real. Nuestro cliente usa Node.js y a continuación se muestra un ejemplo usando ioredis como cliente:

const Redis = require('ioredis');

(async () => {
  // Establecer credenciales de Redis
  // Si usa Stackhero, las encontrará en el panel de Stackhero
  const redis = new Redis({
    host: '<redisServerHost>',
    password: '<redisServerPassword>',
    port: <PORT_TLS>, // <PORT_CLEAR> es para conexiones no seguras y <PORT_TLS> es para TLS. Se debe usar TLS.
    tls: {}, // Proporcione un objeto vacío para activar TLS
    lazyConnect: true
  });

  // Conectar a Redis
  await redis.connect();

  // Añadir usuarios
  await redis.zadd('usersScores', 11, 'userId1');
  await redis.zadd('usersScores', 54, 'userId2');
  await redis.zadd('usersScores', 24, 'userId3');

  // Recuperar puntuación de userId1
  const score = await redis.zscore('usersScores', 'userId1');
  console.log('userId1 tiene ' + score + ' puntos');

  // Recuperar posición de rango de userId1
  const rankPosition = await redis.zrevrank('usersScores', 'userId1');
  console.log('userId1 está clasificado en la posición ' + rankPosition);

  // Desconectar de Redis
  await redis.disconnect();
})();

Este fragmento de código simple pero poderoso es ideal para gestionar datos de clasificación en tiempo real.