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

Redis pub/sub per il server di chat in node.js

Se stai usando la funzionalità redis pub/sub all'interno del tuo programma node.js dovresti dedicare una connessione client redis per l'ascolto su alcuni canali e una seconda connessione client redis per inviare comandi normali e/o pubblicare messaggi ai tuoi canali. Da node_redis docs:

Quando un client emette un ABBONAMENTO o un PSUBSCRIBE, tale connessione viene messa in modalità "pub/sub". A quel punto sono validi solo i comandi che modificano il set di abbonamenti. Quando il set di abbonamenti è vuoto, la connessione viene ripristinata in modalità normale.

Se hai bisogno di inviare comandi regolari a Redis mentre sei in modalità pub/sub, apri un'altra connessione.

Il tuo problema è anche correlato a queste domande:

  • Redis/Node.js - 2 client (1 pub/sub) che causano problemi con le scritture
  • Perché non posso avere un singolo client Redis che funge da PUB e Sub nella stessa connessione?