Se désabonner avec UNSUBSCRIBE
Dans cette étape, vous apprendrez comment vous désabonner d'un canal dans Redis en utilisant la commande UNSUBSCRIBE. Se désabonner retire un client de la liste des abonnés d'un canal spécifique, l'empêchant de recevoir les messages publiés ultérieurement sur ce canal.
Terminal 1 : Quitter le mode d'abonnement
Accédez au Terminal 1 (où vous êtes actuellement abonné à mychannel). Vous devriez voir le statut de l'abonnement indiquant "Reading messages... (press Ctrl-C to quit)".
Étant donné que le Terminal 1 est en mode d'abonnement, vous ne pouvez pas exécuter directement les commandes Redis habituelles. Pour vous désabonner, vous devez d'abord quitter le mode d'abonnement :
-
Appuyez sur Ctrl+C pour quitter le mode d'abonnement.
-
Vous devriez constater que la session redis-cli se termine et retourne à l'invite du terminal.
-
reconnectez-vous à Redis :
redis-cli
-
Vous pouvez maintenant exécuter la commande UNSUBSCRIBE (bien que ce ne soit pas nécessaire car la déconnexion vous a déjà désabonné) :
UNSUBSCRIBE mychannel
Note : Lorsque vous avez appuyé sur Ctrl+C, vous vous êtes en fait déjà déconnecté de tous les abonnements. La commande UNSUBSCRIBE est présentée à titre démonstratif, mais en pratique, la déconnexion vous désabonne automatiquement de tous les canaux.
La sortie dans le Terminal 1 ressemblera à ceci :
1) "unsubscribe"
2) "mychannel"
3) (integer) 0
Analysons la sortie :
"unsubscribe" : Ceci indique que vous vous êtes désabonné d'un canal.
"mychannel" : C'est le nom du canal dont vous vous êtes désabonné.
(integer) 0 : C'est le nombre de canaux auxquels vous êtes actuellement abonné. Il est maintenant de 0 car vous vous êtes désabonné de mychannel.
Terminal 2 : Tester la publication après désabonnement
Passez maintenant au Terminal 2 et publiez un autre message sur mychannel :
PUBLISH mychannel "Is anyone still there?"
La sortie dans le Terminal 2 sera :
(integer) 0
Ceci indique qu'aucun client n'a reçu le message car vous vous êtes désabonné du canal dans le Terminal 1.
Vérifier qu'aucun message n'a été reçu
Regardez le Terminal 1 – vous devriez remarquer qu'aucun nouveau message n'apparaît car vous vous êtes désabonné du canal.
Ceci démontre comment se désabonner d'un canal vous empêche de recevoir les messages publiés ultérieurement sur ce canal, tandis que l'éditeur peut toujours envoyer des messages (mais personne ne les recevra).
Important : Gardez les deux terminaux et leurs sessions redis-cli actifs pour la prochaine étape.