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

Redis Pub Memoria del canale secondario

Redis non mantiene i messaggi in memoria nel contesto Pub/Sub come puoi vedere nell'implementazione (x):

  1. il messaggio viene inviato ai client in ascolto di quel canale (se presente),
  2. il messaggio viene inviato ai client che ascoltano i canali corrispondenti (se presenti).

Quindi Redis restituisce semplicemente quanti client hanno ricevuto il messaggio (tenendo presente che un client può ricevere un singolo messaggio più volte, ad esempio se più pattern corrispondono).

Se non ci sono client iscritti, Redis restituisce semplicemente 0 e il messaggio non viene registrato/bufferizzato:

> publish foo test
(integer) 0

(x) fondamentalmente Redis scorre l'elenco dei client sottoscritti e invia una risposta con il messaggio.