Redis est un système de gestion de base de données clef-valeur hautes performances qui stocke les informations en mémoire pour un accès rapide. Il peut être utilisé pour gérer les sessions de vos utilisateurs ou le cache de votre site par exemple.
Pour intéragir avec votre base de données Redis vous pouvez utiliser l'invite de commandes redis-cli. La liste des commandes est disponible sur la documentation.
Les chaines
Les chaines de caractères sont les données de bases.
Expiration
Il est possible de définir le temps d'expiration d'une clef à l'aide de la commande EXPIRE.
Attention, lorsque vous redéfinissez la valeur d'une clef son TTL (time to live) repasse à -1 et la clef n'expirera plus. Donc pensez à bien redéfinir le TTL à chaque fois.
Listes
Les listes permettent de sauvegarder une liste d'éléments ordonnée
Les Sets
Les sets permettent de sauvegarder des informations de manière non ordonnées avec une notion d'unicité. Contrairement aux liste un set ne peut contenir plusieurs fois le même élément.
Il est aussi possible de créer des sets ordonnés en introduisant une notion de score.
Les hashs
Les hashs permettent de sauvegarder des informations plus complexes qui ont des sous propriétés :
Pub/Sub
Redis permet de mettre en place un système de Publish-subscribe où un "publisher" va être capable d'envoyer un message qui pourra ensuite être écouté par différent "subscribers".
Ce mécanisme s'avère terriblement utile lors de la création d'une application fonctionnant en temps réel. Par contre, les données publiées dans les canaux ne sont par persistées. Une personne qui souscrit à un canal ne recevra donc pas un historique des messages envoyés.