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

jaka jest średnia różnica między klejnotami Nest i redis-namespace, gdy używamy redis z rails/ruby?

Zastrzeżenie:jestem autorem Nest.

To samo można osiągnąć z obiema bibliotekami i myślę, że głównym wyróżnikiem między tymi narzędziami jest ich wewnętrzna złożoność. Podczas gdy Nest pomaga tylko w reprezentowaniu struktury za pomocą płaskich kluczy, Redis::Namespace ma tabelę translacji dla każdego polecenia, dzięki czemu jest bardziej delikatna i intensywnie wykorzystuje procesor.

Spójrz na kod źródłowy obu narzędzi, aby zobaczyć, co mam na myśli:

https://github.com/soveran/nest/blob/master/lib/nest.rb

https://github.com/resque/redis-namespace/blob/master/lib/redis/namespace.rb

To powiedziawszy, właściwym rozwiązaniem opisanego problemu jest posiadanie oddzielnych instancji Redis dla różnych projektów. Weź pod uwagę, że przestrzeń kluczy to tylko jeden aspekt, który należy wziąć pod uwagę (który można również łatwo rozwiązać za pomocą różnych baz danych dostarczanych przez Redis). Inne aspekty (strategia trwałości, limity połączeń i pamięci, kluczowe eksmisje itp.) są zwykle dostosowywane w zależności od charakteru projektu.

Innym ważnym faktem jest to, że Redis jest jednowątkowy, a wiele aplikacji z niego korzysta, więc musisz dzielić ten sam rdzeń dla wszystkich żądań. Mając to na uwadze, posiadanie różnych instancji Redis pomaga zrównoleglać pracę.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wiedząc, kiedy resque pracownik zakończył pracę

  2. Redis połączyć ECONNREFUSED 127.0.0.1:6379

  3. Spring Data Redis:Redis Pipeline zwraca zawsze wartość null

  4. Jaki jest sens wielu baz danych Redis?

  5. socket.io redis i wyciek pamięci