sql >> Database >  >> NoSQL >> Redis

2 benaderingen voor het volgen van online gebruikers met Redis. Welke is sneller?

Om te weten of een bepaalde gebruiker online is, is de eerste methode een stuk sneller - niets is sneller dan het lezen van een enkele sleutel.

Het vinden van gebruikers op een bepaalde pagina is niet zo duidelijk (ik heb geen harde cijfers gezien over de prestaties van snijpunten of jokertekens), maar als de set groot genoeg is om prestatieproblemen te veroorzaken bij beide implementaties, is het niet praktisch om weer te geven ze toch allemaal.

Voor het matchen van gebruikers met een vriendenlijst zou ik waarschijnlijk ook voor de eerste benadering gaan - zelfs een paar honderd get-bewerkingen (de status van iedereen in de lijst controleren) zouden de intersectie op meerdere sets moeten overtreffen als die sets een groot aantal records hebben en zijn moeilijk te onderhouden.

Redis-sets zijn meer geschikt voor dingen die niet met sleutels kunnen worden gedaan, vooral wanneer het belangrijker is om alle items in de set te krijgen dan te controleren of een bepaald item in de set zit.




  1. Hoe een MongoDB-cluster configureren die sessies ondersteunt?

  2. Hoe vaak moet ik mijn Booksleeve-verbinding openen/sluiten?

  3. Wanneer Redis gebruiken in plaats van MySQL voor PHP-applicaties?

  4. Hoe een mangoestschema te maken met een reeks object-ID's?