"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Rédis

Rédis

Publié le 2024-11-06
Parcourir:731

Redis

Redis est une base de données NOSQL dans laquelle les données sont stockées dans des paires clé-valeur.
Redis stocke les données sur la mémoire principale, ce qui signifie qu'elles sont rapides mais volatiles, contrairement aux systèmes de bases de données comme PostgreSQL qui stockent les données sur disque.

Aperçu

Dans une application avec un serveur et une base de données, l'accès aux informations de la base de données entraînera une latence.

Les bases de données de valeurs-clés comme Redis sont souvent conservées devant ces bases de données et les opérations d'accès se déroulent en 2 étapes :

  1. Si les informations sont dans le cache, cache hit, l'application récupère les informations de Redis et les envoie au client
  2. Sinon, manque de cache, l'application récupère les informations de la base de données, les envoie au client et les stocke dans le cache.

Avec ces 2 étapes et étant donné que la mémoire principale a une latence inférieure à celle du disque, nous pouvons dire que Redis peut être utilisé pour stocker et accéder à des données fréquentes et récentes et à des opérations coûteuses, rendant ainsi les applications 10 à 50 fois plus rapides.

C'est donc un fait que si vous souhaitez créer une application qui sera évolutive à l'avenir, Redis(ou des bases de données similaires à Redis) est indispensable.


Questions

  1. Redis est-il open source ? : Oui, Redis est open source avec un type de licence spécial, mais il existe des alternatives comme KeyDB de Snapchat et Memcached qui sont open source. KeyDB est un fork de Redis mais ne peut pour l'instant fonctionner que sous Linux.

  2. Redis prend-il en charge Windows ? : Non, Redis ne prend pas en charge Windows, mais vous pouvez installer WSL/Ubuntu et installer Redis en utilisant

sudo apt install redis
  1. J'utilise WSL, pourquoi le serveur Redis ne fonctionne-t-il pas sur mon système : lors de l'exécution sur WSL, vous pouvez exécuter le serveur Redis en utilisant
redis-server --port 6000

où 6000 est le port de votre serveur local sur lequel vous souhaitez l'exécuter. (c'est-à-dire 127.0.0.1:6000).

La plupart des problèmes sont dus au fait que le port par défaut utilisé par le serveur Redis est déjà utilisé

  1. Existe-t-il des bibliothèques clientes pour Redis ? : En fait, oui. vous pouvez les trouver sur le site Web de Redis ou en créer un vous-même.

Installation de Redis

Sous Linux, installer Redis est aussi simple que

sudo apt install redis

ou sur Mac :

brew install redis

Exécuter Redis

Vous devez avoir 2 instances de votre terminal sur

sur le premier à exécuter votre serveur

redis-server -port 

et sur le second pour exécuter votre client

redis-cli

Lors de la création d'une application Web, vous n'avez pas besoin d'exécuter le client mais le serveur doit être en cours d'exécution

Concepts Redis

Il y a 3 concepts principaux dans Redis que vous devez comprendre ou 4

  1. Paires clé-valeur
  2. Listes
  3. Ensembles
  4. Hachages

Toutes les autres structures de données sont principalement une implémentation avancée de la première

Par liste, je voulais dire tableau pas liste liée et c'est ainsi que Redis l'appelle.


Paires clé-valeur

Les paires clé-valeur constituent une structure de données courante dans la plupart des langages de programmation.

  1. En Python, cela s'appelle dictionnaires ou dict en abrégé

  2. En Javascript, cela s'appelle Maps

  3. En C#, cela s'appelle Dictionnaires

Il existe 6 opérations principales pour les paires clé-valeur dans Redis

Opérations Explications Exemples Explications supplémentaires
ENSEMBLE Crée une paire clé-valeur DÉFINIR le nom de John Définit la clé à mapper à la valeur
OBTENIR Obtient la valeur de la clé OBTENIR le nom Cela renvoie John
DEL Supprime la paire clé-valeur Nom DEL Cela supprime le nom de la paire clé-valeur de la base de données
EXISTE Vérifie si une clé existe dans la base de données Redis NOM EXISTE renvoie 1 ou 0 correspondant à Vrai ou Faux
CHASSE D'EAU Efface tout le cache CHASSE D'EAU plus ou moins comme DROP TABLE dans postgres
CLÉS * Renvoie toutes les clés de la base de données CLÉS *

Il existe également des opérations basées sur le temps. Dans les opérations basées sur le temps, la clé n'est dans le cache que pendant une durée définie. Une fois le délai écoulé, le cache supprime la clé.

Il existe 2 opérations principales basées sur le temps

Opérations Explications Exemples Explications supplémentaires
EXPIRER Expire une clé après avoir été définie EXPIRE nom 10 Supprime le nom clé-valeur après 10 secondes. La clé doit être définie avec SET avant d'appeler EXPIRE . Une alternative courante est : 
SETEX Expire une clé lors de la définition SETEX 30 ans 15 ans Définit l'âge de la clé sur la valeur 30, puis supprime la paire clé-valeur après 15 s
TTL Il est temps de vivre Âge TTL Renvoie le temps restant avant suppression de la clé d'âge

Le blog devient trop long maintenant, je vais parler des listes, des ensembles, des hashmaps et aussi des questions d'entretien possibles sur redis dans un autre blog.

S'il vous plaît, si vous avez des questions, veuillez les commenter ci-dessous, je ferai de mon mieux pour y répondre ⭐. Bon codage

Déclaration de sortie Cet article est reproduit sur : https://dev.to/ezekiel_77/redis-3njh?1 En cas de violation, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3