Pub/Sub to komunikacja synchroniczna. Wszystkie strony muszą być aktywne w tym samym czasie, aby móc się komunikować. Tutaj Redis jest wyłącznie brokerem synchronicznych wiadomości.
Odpowiedź na twoje pierwsze trzy pytania brzmi:nie. Komunikaty nie są trwałe, ani na dysku, ani w pamięci. Gdy wiadomość jest publikowana, jest wysyłana do połączeń klientów subskrybowanych w danej chwili. Polecenie OPUBLIKUJ natychmiast zwróci liczbę klientów, którzy otrzymali wiadomość:O(N+M) gdzie N to liczba klientów zasubskrybowanych do kanału odbiorczego, a M to całkowita liczba subskrybowanych wzorców (przez dowolnego klienta).
... ale zauważam, że jeśli nie będę miał dostępu do Internetu i ponownie się połączę, tematy zostaną dostarczone, gdy wrócę do trybu online
R/ Myślę, że to zależy od tego, co masz na myśli mówiąc „Jestem przybity ”. Wiadomość musi być zapisana w pamięci podręcznej gdzieś w twoim kliencie. A może połączenie klienta w Redis Server było nadal aktywne, a wiadomość znajdowała się w buforze wyjściowym klienta.
Te zasoby mogą okazać się przydatne:
Jakie są główne różnice między Redis Pub/Sub a Redis Stream?
Pub/Sub