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

Czy memcached jest dinozaurem w porównaniu z Redis?

Zależy od tego, czego potrzebujesz, ogólnie myślę, że:

  • Nie powinieneś przejmować się występami. Redis jest szybszy na rdzeń z małymi wartościami, ale memcached może używać wielu rdzeni z jednym plikiem wykonywalnym i portem TCP bez pomocy klienta. Również memcached jest szybszy z dużymi wartościami rzędu 100k. Redis ostatnio znacznie poprawił duże wartości (niestabilna gałąź), ale nadal memcached jest szybszy w tym przypadku użycia. Chodzi o to, że żadne z nich nie będzie wąskim gardłem dla zapytań na sekundę, które mogą dostarczyć.
  • Powinieneś dbać o wykorzystanie pamięci. W przypadku prostych par klucz-wartość pamięć podręczna jest bardziej wydajna pod względem pamięci. Jeśli używasz skrótów Redis, Redis jest bardziej wydajny pod względem pamięci. Zależy od przypadku użycia.
  • Powinieneś zainteresować się trwałością i replikacją, dwiema funkcjami dostępnymi tylko w Redis. Nawet jeśli Twoim celem jest zbudowanie pamięci podręcznej, pomaga to, że po aktualizacji lub ponownym uruchomieniu Twoje dane nadal tam są.
  • Powinieneś dbać o rodzaj operacji, których potrzebujesz. W Redis jest wiele złożonych operacji, nawet biorąc pod uwagę przypadek użycia buforowania, często można zrobić o wiele więcej w jednej operacji, bez konieczności przetwarzania danych po stronie klienta (czasami potrzeba wielu operacji we/wy). Te operacje są często tak szybkie, jak zwykłe GET i SET. Więc jeśli nie potrzebujesz tylko GET/SET, ale bardziej złożonych rzeczy, Redis może bardzo pomóc (pomyśl o buforowaniu osi czasu).

Bez przypadku użycia trudno jest teraz wybrać, ale myślę, że w wielu sprawach Redis ma sens, ponieważ nawet jeśli nie chcesz go używać jako DB, będąc o wiele bardziej zdolnym, możesz rozwiązać więcej problemów, nie tylko buforowanie, ale nawet przesyłanie wiadomości, ranking i tak dalej.

PS oczywiście mogę być stronniczy, ponieważ jestem głównym deweloperem projektu Redis.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. TTL dla członka zbioru

  2. Błąd:Nie można połączyć się z Redis w redis:6379:Nieznana nazwa lub usługa

  3. Jak skonfigurować klaster redis przy użyciu spring-data-redis 1.7.0.M1?

  4. Limit szybkości interfejsu API (wiosna MVC)

  5. nodejs, redis. sprawdź, czy klucze istnieją i utwórz nowe, jeśli nie