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

Wieloserwerowy klaster Node.js:jak udostępnić obiekt w klastrze kilku węzłów

Redis jest fajny, ponieważ jest niezależny od aplikacji węzła i dość łatwy do skalowania. Możesz go również używać do wielu rzeczy poza pub/sub, takich jak udostępnianie podstawowych struktur danych (hasze, posortowane zestawy, listy, ciągi) między serwerami węzłów, aby również w ten sposób zachować ich synchronizację. Teoretycznie możesz zapisać wszystkie czaty w danym pokoju jako posortowany zestaw, w którym twój klucz jest reprezentacją json jakiegoś obiektu czatu (coś w rodzaju {'user':'some_user','msg':'some_msg'} Twój wynik to sygnatura czasowa, więc bardzo łatwo jest przeciągać rozmowy według czasu). Redis jest niezwykle szybki, a jego struktury danych są wysoce zoptymalizowane, dzięki czemu jeden serwer może obsłużyć wielu, wielu użytkowników.

Mamy podobną konfigurację w produkcji z jednym serwerem Redis obsługującym 1 milion użytkowników (około 10 tys. wejść i 20 tys. odczytów z posortowanego zestawu na minutę), a użycie procesora rzadko przekracza 5% na polu bez obciążenia procesora.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nadużywanie cURL do komunikacji z Redis

  2. Klucz wygasania danych Spring Data Redis

  3. Pipelining vs Batching w Stackexchange.Redis

  4. nestJS socket.io-redis:6.0.1

  5. Przetwarzanie zbiorcze do Redis