Redis
Redis est un magasin qui garde les données dans la mémoire de la machine plutôt que sur un disque, pour répondre instantanément la deuxième fois à la même question coûteuse.
Également appelé cache en mémoire magasin clé-valeur serveur de cache
Définition
Redis est un petit magasin très rapide, posé à côté de votre site, qui garde des choses en mémoire. La mémoire est l'espace de travail qu'un ordinateur utilise tant qu'il est allumé, et y lire est des milliers de fois plus rapide que lire sur un disque. Tout Redis tient dans cet écart.
Imaginez la page d'une boutique très visitée où chaque visiteur pose la même question, à savoir quelles sont les offres du jour. Sans Redis, le site interroge la base principale et recalcule la réponse pour chacun, des centaines de fois par minute, pour le même résultat. Avec Redis, il la calcule une fois et remet la même copie à tous les autres pendant la minute suivante, si bien que la page arrive plus vite. La base reste alors libre pour le travail qu'elle seule peut faire.
Il fait trois autres choses très bien, à commencer par se souvenir de qui est connecté, pour qu'on ne redemande pas le mot de passe à chaque clic. Il tient aussi une file de tâches, comme l'e-mail de facture qui part après la vente et non pendant que le client attend au comptoir. Et il compte des événements sur de courtes périodes, ce qui explique qu'un formulaire de connexion autorise cinq essais par minute et refuse le sixième. Ce dernier point est un travail de sécurité peu coûteux qui arrête la plupart des devinettes de mots de passe avant qu'elles ne commencent.
Voici la partie que les équipes apprennent à la dure, car la mémoire se vide dès que la machine redémarre. Redis peut écrire une copie sur le disque, mais il le fait par intervalles, donc un redémarrage à la mauvaise seconde perd les dernières secondes. Pour une page mise en cache c'est acceptable, pour une commande ce ne l'est pas, donc rien dont l'unique copie vit dans Redis ne doit compter. La deuxième surprise est que, par défaut, Redis a le droit d'utiliser toute la mémoire disponible, si bien que tout ce qui tourne sur la machine en souffre quand elle n'en a plus. Linkysoft fixe cette limite dès le premier jour de chaque projet. Demandez donc à votre prestataire quelle est la limite et ce qui est jeté quand elle est atteinte.
Quand Linkysoft construit une application web, Redis arrive en général la deuxième semaine, pas la première. On ne peut pas mettre une réponse en cache avant de savoir lesquelles sont les plus demandées, donc on mesure d'abord et on l'ajoute là où la mesure pointe. Dans un système de boutique comme Storek, ce sont presque toujours les mêmes trois gagnants. Ce sont la page d'une catégorie, les suggestions sous la barre de recherche et le nombre d'articles du panier affiché dans un coin de chaque écran.
Questions sur Redis
Redis est-il une base de données ?
Redis perd-il des données quand le serveur redémarre ?
Ai-je besoin de Redis pour un petit site ?
Redis est-il gratuit ?
Quelle est la différence entre Redis et Memcached ?
Vous ne voyez toujours pas comment cela s'applique à votre projet ?
Dites-nous ce que vous construisez et nous vous répondrons simplement.