2.8 KiB
Exercices Redis
Utiliser redis-cli et copier/coller le résultat de chaque exercice (commandes et retours de Redis) dans un fichier texte.
Exercice 1
- créer une clé "normale" avec sa valeur
- récupérer le résultat
- supprimer la clé
Exercice 2 : expiration
- créer une clé
- lui donner une expiration courte (quelques secondes)
- vérifier que la clé "disparaît" toute seule
Exercice 3 : compteurs
- Créer une clé contenant un numéro
- L'incrémenter et le décrementer avec les commandes Redis adaptées
Exercice 4 : liste unique non ordonnée
- Créer une liste unique non ordonnée (set,
SADD
) - Y insérer plusieurs entrées
- Insérer des entrées en double
- Vérifier que la liste ne contient pas de doublons
- Supprimer des entrées
Exercice 5 : liste ordonnée par ordre d'insertion
- Créer une liste ordonnée (
LPUSH
) - Ajouter des entrées par la gauche et la droite (
LPUSH
etRPUSH
) - Récupérer une partie de la liste
- Supprimer des éléments par la gauche, la droite (pop) et arbitrairement (rem)
Exercice 6 : hashes
- Créer un hash avec plusieurs sous-clés et sous-valeurs (
HSET
etHMSET
) - Récupérer toutes les sous-valeurs du hash
- Modifier une seule sous-valeur
- Récupérer une seule sous-valeur
Exercice 7 : liste ordonnée par score
- Enregistrer les scores de 10 joueurs de Tetris dans une liste ordonnée (
ZADD
), avec leurs noms et leurs scores - Récupérer la liste des 5 meilleurs joueurs (
ZRANGE
) - Récupérer le score du joueur Bob
Mini-projet : newsfeed de réseau social
Note : tout le monde doit utiliser le même serveur Redis au final !
Travail en équipe (groupes et classe).
Prérequis avant de coder : se mettre d'accord avec le reste de la classe de la structure des données à stocker dans Redis (types, noms des clés, etc.) !
Pour rendre les choses plus faciles : la base Redis contiendra une liste unique non ordonnée "utilisateurs" contenant la liste des noms/pseudo des utilisateurs du réseau social.
- L'application doit permettre d'ajouter des posts à sa propre timeline
- Les posts doivent contenir : date, nom de l'utilisateur, contenu du post
- Chaque utilisateur a une timeline différente selon qui il veut suivre
- Mais le contenu des posts ne doit être stocké qu'une seule fois !
- L'application doit propager ces posts aux utilisateurs inscrits à sa propre timeline
- L'application doit permettre de lire les derniers posts des utilisateurs auxquels on s'est inscrit
Note : l'implémentation de la gestion des utilisateurs et de l'inscription aux timelines des autres utilisateurs est facultative (création d'utilisateur et inscription aux timelines sont possibles à la main avec redis-cli).
Note 2 : certaines données associatives peuvent être doublonnées (présence dans plusieurs clés) si besoin.