Valkey: Usar Pub/Sub con Valkey y Python

Esta documentación forma parte de la guía Uso con Python. Consulte la guía completa aquí: Cómo conectar Valkey con Python.

👋 ¡Bienvenido a la documentación de Stackhero!

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

  • Interfaz web UI 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 Valkey cloud hosting de Stackhero!

Aprovechar la funcionalidad Publish/Subscribe (Pub/Sub) en Python con Valkey es sencillo. Aquí hay un ejemplo:

import redis

# Conectar a Valkey
r = redis.from_url(
  'rediss://default:<password>@<XXXXXX>.stackhero-network.com:<PORT_TLS>',
  health_check_interval=10,
  socket_connect_timeout=5,
  socket_keepalive=True,
  retry_on_timeout=True
)

# Crear una instancia de PubSub
p = r.pubsub()

# Suscribirse al canal "test"
p.subscribe('test')

# Publicar un mensaje en el canal "test"
r.publish('test', 'Este es un mensaje de prueba')

# Obtener el primer mensaje disponible del canal "test"
p.get_message()

# Cancelar la suscripción del canal "test"
p.unsubscribe('test')

Amplíe sus capacidades de Pub/Sub con estos ejemplos avanzados:

# Crear una instancia de PubSub e ignorar los mensajes de suscripción
p = r.pubsub(ignore_subscribe_messages=True)

# Suscribirse a múltiples canales
p.subscribe('test-1', 'test-2', ...)

# Cancelar la suscripción de múltiples canales
p.unsubscribe('test-1', 'test-2', ...)

# También puede usar "unsubscribe" sin argumentos para desconectarse de todos los canales suscritos
p.unsubscribe()

# Suscribirse a canales usando un patrón
p.psubscribe('my-*')

# Cancelar la suscripción de canales usando un patrón
p.punsubscribe('my-*')