sql >> Database >  >> NoSQL >> Redis

Is memcached een dinosaurus in vergelijking met Redis?

Hangt ervan af wat je nodig hebt, in het algemeen denk ik dat:

  • Je moet niet te veel geven om optredens. Redis is sneller per kern met kleine waarden, maar memcached kan meerdere kernen gebruiken met een enkel uitvoerbaar bestand en een TCP-poort zonder hulp van de client. Ook is memcached sneller met grote waarden in de orde van 100k. Redis heeft onlangs veel verbeterd over grote waarden (instabiele tak), maar memcached is nog steeds sneller in dit geval. Het punt is hier:het een of het ander zal waarschijnlijk niet je bottleneck zijn voor de zoekopdracht per seconde die ze kunnen leveren.
  • Je moet je zorgen maken over geheugengebruik. Voor eenvoudige sleutel-waardeparen is memcached meer geheugenefficiënt. Als u Redis-hashes gebruikt, is Redis geheugenefficiënter. Afhankelijk van het gebruik.
  • Je moet rekening houden met persistentie en replicatie, twee functies die alleen beschikbaar zijn in Redis. Zelfs als het je doel is om een ​​cache te bouwen, helpt het dat na een upgrade of een herstart je gegevens er nog steeds zijn.
  • Je moet je zorgen maken over het soort operaties dat je nodig hebt. In Redis zijn er veel complexe bewerkingen, zelfs als u alleen de caching-use case in aanmerking neemt, kunt u vaak veel meer doen in een enkele bewerking, zonder dat gegevens aan de clientzijde hoeven te worden verwerkt (soms is er veel I/O nodig). Deze bewerkingen zijn vaak net zo snel als gewoon GET en SET. Dus als je niet alleen GET/SET nodig hebt, maar meer complexe dingen, kan Redis veel helpen (denk aan tijdlijncaching).

Zonder een use-case is het moeilijk om nu de juiste te kiezen, maar ik denk dat Redis voor veel dingen logisch is, want zelfs als je het niet als een DB wilt gebruiken, omdat je veel capabeler bent, kun je meer problemen oplossen, niet alleen caching, maar zelfs messaging, ranking, enzovoort.

P.s. natuurlijk kan ik bevooroordeeld zijn, aangezien ik de hoofdontwikkelaar van het Redis-project ben.



  1. Apache CouchDB installeren in Ubuntu 20.04

  2. WRONGTYPE Operatie tegen een sleutel met de verkeerde waarde php

  3. Hoe een BsonDocument-object terug naar klasse te deserialiseren?

  4. Mongodb $where-query altijd waar met nodejs