Redis не съхранява съобщения в паметта в Pub/Sub контекста, както можете да видите в реализацията (x):
- съобщението се изпраща до клиенти, които слушат този канал (ако има такъв),
- съобщението се изпраща до клиенти, които слушат съответстващи канали (ако има такива).
След това Redis просто връща колко клиенти са получили съобщението (имайте предвид, че клиентът може да получи едно съобщение няколко пъти, например ако съвпадат няколко модела).
Ако няма абониран клиент, Redis просто връща 0 и съобщението не се записва/буферира:
> publish foo test
(integer) 0
(x) по същество Redis преглежда списъка с абонирани клиенти и изпраща отговор със съобщението.