Redis®*: Validations techniques
Cette documentation fait partie du guide Classer les utilisateurs en temps réel. Consultez le guide complet ici : Découvrez comment classer 2 millions d'utilisateurs par score en temps réel avec Redis.
👋 Bienvenue sur la documentation de Stackhero !
Stackhero propose une solution Redis cloud prête à l'emploi qui offre de nombreux avantages, notamment :
- Interface web Redis Commander incluse.
- Taille des messages et transferts illimités.
- Mises à jour simplifiées en un clic.
- Performance optimale et sécurité renforcée grâce à une VM privée et dédiée.
Gagnez du temps et simplifiez-vous la vie : il suffit de 5 minutes pour essayer la solution Redis cloud hosting de Stackhero !
Les sorted sets associent une clé et un score. Dans notre cas, la clé correspond à l'ID utilisateur et le score représente les points de l'utilisateur.
Nous avons commencé par lancer un service Redis sur Stackhero. Le service est opérationnel en seulement 2 minutes avec la dernière version stable, propose une facturation à l'heure et intègre Redis Commander, une interface web pratique. Nous avons validé le concept via cette interface.
Nous avons ajouté trois utilisateurs avec des IDs et scores d'exemple comme ci-dessous :
| Nom d'utilisateur | Score | | - | - | | userId1 | 11 | | userId2 | 54 | | userId3 | 24 |
Ces utilisateurs ont été ajoutés à un sorted set nommé usersScores avec les commandes Redis suivantes :
ZADD usersScores 11 "userId1"
ZADD usersScores 54 "userId2"
ZADD usersScores 24 "userId3"
Redis Commander, l'interface web fournie sur Stackhero avec les instances Redis
Ensuite, nous avons récupéré le score de userId1 :
ZSCORE usersScores "userId1"
> 11
Cela a confirmé que le score de userId1 était bien 11. Après cela, nous avons vérifié le rang de userId1 :
ZREVRANK usersScores "userId1"
> 2
Pour rappel, le classement commence à 0. Cela signifie que les classements sont les suivants :
| Nom d'utilisateur | Score | Rang | | - | - | - | | userId1 | 11 | 2 | | userId2 | 54 | 0 | | userId3 | 24 | 1 |
La commande ZREVRANK a retourné 2, ce qui correspond exactement à ce que nous attendions pour userId1.
Vous pouvez également récupérer les meilleures entrées. Par exemple, pour obtenir les 2 premiers utilisateurs (du rang 0 au rang 1), exécutez :
ZREVRANGE usersScores 0 1 WITHSCORES
> 1) userId2
> 2) 54
> 3) userId3
> 4) 24
Pour obtenir le top 100, il suffit d'exécuter :
ZREVRANGE usersScores 0 99 WITHSCORES
Cette méthode est efficace et parfaitement adaptée au classement en temps réel à haute performance.