Si vous utilisez la fonctionnalité redis pub/sub dans votre programme node.js, vous devez dédier une connexion client redis pour écouter sur certains canaux et une deuxième connexion client redis pour envoyer des commandes normales et/ou publier des messages sur votre ou vos canaux. À partir de la documentation node_redis :
Lorsqu'un client émet un SUBSCRIBE ou un PSUBSCRIBE, cette connexion est mise en mode "pub/sub". À ce stade, seules les commandes qui modifient l'ensemble d'abonnements sont valides. Lorsque le jeu d'abonnements est vide, la connexion est remise en mode normal.
Si vous devez envoyer des commandes régulières à Redis en mode pub/sub, ouvrez simplement une autre connexion.
Votre problème est également lié à ces questions :
- Redis/Node.js :2 clients (1 pub/sub) causant des problèmes d'écriture
- Pourquoi ne puis-je pas avoir un seul client Redis agissant en tant que PUB et Sub dans la même connexion ?