www node hkeys docu commands redis publish-subscribe

hkeys - redis subscribe node



¿Qué es Redis pubsub y cómo lo uso? (1)

Publicar / suscribir es un paradigma bastante simple. Piense que está ejecutando un programa de entrevistas en una estación de radio. Eso es PUBLICAR. Esperas que al menos una o más personas seleccionen tu canal para escuchar tus mensajes en el programa de radio (SUSCRIBIRSE) y tal vez incluso hagan algunas cosas, pero no estás hablando directamente con la gente.

¡Divirtámonos un poco con redis-cli!

redis 127.0.0.1:6379> PUBLISH myradioshow "Good morning everyone!" (integer) 0 redis 127.0.0.1:6379> PUBLISH myradioshow "How ya''ll doin tonight?" (integer) 0 redis 127.0.0.1:6379> PUBLISH myradioshow "Hello? Is anyone listening? I''m not wearing pants." (integer) 0

Tenga en cuenta que no hay clientes que reciban los mensajes en su canal "myradioshow" (ese es el 0 en la respuesta). Nadie está escuchando. Ahora, abra otro redis-cli (o para más momentos divertidos haga que un amigo abra su redis-cli y se conecte a su servidor) y SUSCRIBASE al canal:

redis 127.0.0.1:6379> SUBSCRIBE myradioshow Reading messages... (press Ctrl-C to quit) 1) "subscribe" 2) "myradioshow" 3) (integer) 1

Regresa a tu redis-cli original y continúa tu show:

redis 127.0.0.1:6379> PUBLISH myradioshow "Next caller gets a free loaf of bread!" (integer) 1

¿Note que "1" al final? ¡Tienes un oyente! Como magia, en tu terminal SUBSCRIBE-d:

1) "message" 2) "myradioshow" 3) "Next caller gets a free loaf of bread!"

Por supuesto, en realidad, probablemente querrás hacer cosas que sean más útiles que contarles a tus clientes sobre tu estilo de vida sin pantalones, como disparar eventos en tu servidor o ejecutar algún tipo de tareas / trabajos. ¡Quizás no sin embargo! :)

Alguien me preguntó qué era PubSub y cómo crear un canal (en el comentario de mi respuesta ) y le indiqué el artículo en redis.io => http://redis.io/topics/pubsub . Creo que está bastante claro, pero me pregunto si alguien tiene una mejor explicación. Idealmente, descríbalo claramente con redis-cli .