Redis
 sql >> Database >  >> NoSQL >> Redis

Che cos'è Redis pubsub e come si usa?

Pubblica/sottoscrivi è un paradigma piuttosto semplice. Pensalo come se stessi conducendo un talk show su una stazione radio. Questo è PUBBLICARE. Speri che almeno una o più persone prendano il tuo canale per ascoltare i tuoi messaggi nel programma radiofonico (ISCRIVITI) e magari anche fare qualcosa, ma non stai parlando con la gente direttamente .

Divertiamoci 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

Nota che non ci sono client che ricevono i messaggi sul tuo canale "myradioshow" (che è lo 0 nella risposta). Nessuno sta ascoltando. Ora apri un altro redis-cli (o per momenti più divertenti chiedi a un amico di aprire il suo redis-cli e di connettersi al tuo server) e ISCRIVITI al canale:

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

Torna al tuo redis-cli originale e continua il tuo spettacolo:

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

Notare che "1" alla fine? Hai un ascoltatore! Come per magia, nel tuo terminale SUBSCRIBE-d:

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

Ovviamente, in realtà, probabilmente vorrai fare cose più utili che raccontare ai tuoi clienti il ​​tuo stile di vita senza pantaloni, come lanciare eventi sul tuo server o eseguire qualche tipo di attività/lavori. Forse no però! :)