Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Subskrybenci i wydawcy Redis pub sub max

Redis używa dict , taka sama struktura jak dla kluczy, do przechowywania subskrypcji kanałów, zarówno na klienta, jak i dla wszystkich klientów (zachowuje skrót na subskrypcję z listą subskrybowanych klientów), więc łącznie jest to do 2^32 subskrypcji kanałów.

Używa listy do przechowywania subskrypcji wzorców na klienta, więc teoretycznie jest ograniczona tylko dostępną pamięcią węzła.

Jednak ogólnie rzecz biorąc, możesz mieć nieskończoną liczbę kanałów. Pomyśl o kanale jak o etykiecie, gdy wiadomość jest publikowana. Wiadomości nigdy nie są przechowywane. Po opublikowaniu wiadomości Redis wyszuka klientów subskrybujących ten kanał i przetestuje każdą subskrypcję wzorca. Kanał tak naprawdę istnieje tylko podczas publikowania wiadomości.

Ponieważ istnieją subskrypcje wzorów, istnieje nieograniczona liczba kanałów „logicznych”.

Tylko w powiadomieniach o zdarzeniach mamy 2^32 * bazy danych * kluczowe typy zdarzeń możliwe kanały 'logiczne'.

Jeśli chodzi o liczbę subskrybentów i wydawców, jest ona ograniczona przez maxclients ustawienie, domyślnie 10 000. Nie ma ograniczeń dla subskrybentów i wydawców, ale obowiązuje maksymalny limit klientów (połączeń).

Jak wskazuje @Roman, istnieją ograniczenia bufora, ale dotyczy to głównie przepustowości (przetwarzania wiadomości).



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. redis i watch + multi pozwalają na jednoczesnych użytkowników

  2. Czy kabel Action 5 wymaga Redisa?

  3. Jak zastosować warunek „LUB” w poleceniu klawiszy redis

  4. Klawisze pomijania skanowania Redis

  5. Tworzenie funkcji widoku bez zwracania odpowiedzi w Flask