2013-08-06 5 views
7

Ich konnte in der Dokumentation nicht finden, wie die Nachrichten in einem Kanal in redis publish/subscribe gespeichert werden.speichert redis pub substantiv historische Nachrichten in einem Kanal?

Wenn Sie in einem Redisenkanal veröffentlichen, wird diese Nachricht gespeichert oder beibehalten? Wenn ja, wie lange wird es gespeichert und wie erhalten Sie historische Nachrichten?

Ansonsten gehe ich davon aus, dass es nur diese Nachricht sendet und löscht/löscht diese Nachricht, nachdem dies getan wurde?

Antwort

8

Die Pub/Sub-Nachrichten sind nicht in der Warteschlange, und sogar noch weniger.

Sie werden nur in den Socket-Puffern gepuffert und sofort an die Abonnenten in derselben Ereignisschleife wie die Publikation gesendet.

Wenn ein Teilnehmer eine Nachricht nicht lesen kann, ist diese Nachricht für den Abonnenten verloren.

+0

eine Idee, wie Sie diese Nachrichten speichern? Ich versuche Chat wie Feature –

+1

zu implementieren Sie könnten sie in Listen speichern. Verwenden Sie LPUSH, um ein Element zu speichern, und LPOP oder BLPOP, um es zu entfernen. Sie müssen das Pub/Sub-Verhalten selbst implementieren. –

+0

oh ok .. Danke :) –

Verwandte Themen