Redis
 sql >> Base de données >  >> NoSQL >> Redis

Qu'est-ce que Redis pubsub et comment l'utiliser ?

Publier/s'abonner est un paradigme assez simple. Pensez-y comme si vous dirigiez un talk-show sur une station de radio. C'est PUBLIER. Vous espérez qu'au moins une ou plusieurs personnes capteront votre chaîne pour écouter vos messages sur l'émission de radio (SUBSCRIBE) et peut-être même faire des choses, mais vous ne parlez pas aux gens directement .

Amusons-nous avec 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

Notez qu'aucun client ne reçoit les messages sur votre canal "myradioshow" (c'est le 0 dans la réponse). Personne n'écoute. Maintenant, ouvrez un autre redis-cli (ou pour des moments plus amusants, demandez à un ami d'ouvrir son redis-cli et de se connecter à votre serveur) et ABONNEZ-VOUS à la chaîne :

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

Revenez à votre redis-cli d'origine et continuez votre show :

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

Remarquez que "1" à la fin ? Vous avez un auditeur ! Comme par magie, dans votre terminal SUBSCRIBE-d :

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

Bien sûr, en réalité, vous voudrez probablement faire des choses plus utiles que de parler à vos clients de votre style de vie sans pantalon, comme déclencher des événements sur votre serveur ou exécuter certaines tâches/tâches. Peut-être pas cependant ! :)