Notes Introduction, installation et déploiement de Redis
Recommandé (gratuit) : redis
Répertoire d'articles
- 1. Qu'est-ce que Redis
- 2. Que peut faire Redis
- 3. Téléchargement, installation et déploiement de Redis
- 4.
1. Qu'est-ce que Redis
Redis : REmote DIctionary Server (serveur de dictionnaire distant)
Redis est entièrement Il est open source et gratuit, écrit en langage C et est conforme au protocole BSD. C'est également l'une des bases de données NoSql les plus populaires et est également connu sous le nom de serveur de structure de données. Dans le même temps, Redis est également un simple, efficace, distribué et basé sur la mémoire. Une fois le serveur construit, les services de mise en cache des valeurs-clés sont fournis via des connexions réseau (similaires aux bases de données). 高性能的(key/value)分布式内存数据库
基于内存运行并支持持久化的NoSQL数据库
缓存工具
Redis présente les avantages suivants :
La vitesse de lecture de Redis est de 110 000 fois/s et la vitesse d'écriture est de 80 000 fois/s. Deuxième.
-
1.性能极高
Les types pris en charge par Redis incluent les types de bases de données String, Hash, List, Set et Ordered Set. -
2.丰富的数据类型
Toutes les opérations Redis sont atomiques et enveloppées dans des instructions MULTI et EXEC. -
3.原子性
Redis prend en charge la publication/abonnement, les notifications, l'expiration des clés et d'autres fonctionnalités. -
4.丰富的读写
Redis utilise son propre séparateur. Le code est très court et aucun verrou (MySQL) n'est utilisé, donc l'efficacité est très élevée. 5.高速读写
Redis présente également les inconvénients suivants :
Redis stocke les données directement en mémoire si vous souhaitez enregistrer les données sur le disque. La première méthode consiste à utiliser
- : écrire l'intégralité de la base de données sur le disque de temps en temps, en écrivant toutes les données à chaque fois, mais le coût est très élevé ; la deuxième méthode est
- : suivre uniquement les modifications des données, mais le journal ajouté peut être trop volumineux. Dans le même temps, toutes les opérations doivent être effectuées à nouveau et la vitesse de récupération est lente.
1.持久化
①定时快照(snapshot)
②基于语句追加(aof)
, l'utilisation de la mémoire est trop élevée. 2.耗内存
2. Que peut faire Redis
Dans le développement d'entreprise, Redis peut être utilisé comme base de données, cache et données chaudes (fréquemment interrogées mais non modifiées ou supprimées), le middleware de messages et la plupart des autres fonctions.
Des exemples de scénarios courants pour Redis sont les suivants :
- Mise en cache
De nos jours, la mise en cache est une exigence pour presque tous les sites Web de taille moyenne et grande. Le moyen le plus efficace d'utiliser correctement le cache consiste non seulement à améliorer la vitesse d'accès du site Web, mais également à réduire considérablement la pression sur la base de données. Redis fournit une fonction d'expiration des clés et une stratégie flexible d'élimination des clés.
Liste de classementComme la liste des ventes mensuelles de Taobao, les nouvelles annonces de produits par heure, etc. La structure de données d'ensemble ordonné fournie par Redis peut implémenter diverses applications de classement complexes.
Compteur Comme le nombre de vues de produits sur les sites e-commerce, le nombre de lectures de vidéos sur les sites vidéo, etc. Afin de garantir les performances des données en temps réel, +1 doit être donné à chaque fois que vous naviguez. Lorsque la concurrence est élevée, ce sera sans aucun doute un défi et une pression de demander des opérations de base de données à chaque fois. La commande incr fournie par Redis implémente des fonctions de compteur et des opérations de mémoire avec de très bonnes performances et est très adaptée à ces scénarios de comptage.
Session distribuéeEn mode cluster, lorsqu'il n'y a pas beaucoup d'applications, il suffit généralement d'utiliser la fonction de réplication de session fournie avec le conteneur. Dans l'application Dans des systèmes de plus en plus complexes, les services de session centrés sur des bases de données en mémoire comme Redis sont généralement construits. Les sessions ne sont plus gérées par des conteneurs, mais par des services de session et des bases de données en mémoire.
Verrouillage distribuéLe défi technique apporté par la technologie distribuée est l'accès simultané à la même ressource, telle que l'identification globale, la réduction des stocks, les ventes flash, etc. . Les scénarios dans lesquels le degré de concurrence n'est pas important peuvent être mis en œuvre à l'aide de verrous pessimistes et de verrous optimistes de la base de données. Cependant, dans les situations où le degré de concurrence est élevé, il n'est pas idéal d'utiliser des verrous de base de données pour contrôler l'accès simultané aux ressources. ce qui affecte grandement les performances de la base de données. Vous pouvez utiliser la fonction setnx de Redis pour écrire des verrous distribués. Si le paramètre renvoie 1, cela signifie que l'acquisition du verrou échoue. Il y a plus de détails à prendre en compte dans les applications pratiques.
Réseau socialJ'aime, je n'aime pas, suivre/être suivi, les amis communs, etc. sont les fonctions de base des sites de réseaux sociaux. Le nombre de visites. Les sites de réseaux sociaux proviennent généralement de Il est relativement volumineux et le type de base de données relationnelle traditionnelle n'est pas adapté au stockage de ce type de données. Les structures de hachage, d'ensemble et d'autres données fournies par Redis peuvent facilement implémenter ces fonctions.
Dernière listeStructure de liste Redis, LPUSH peut insérer un ID de contenu comme mot-clé en tête de liste, LTRIM peut être utilisé pour limiter le nombre de listes, donc La liste est toujours N ID. Il n'est pas nécessaire d'interroger la dernière liste, il suffit d'accéder à la page de contenu correspondante en fonction de l'ID.
Système de messagerie
La file d'attente de messages est un middleware indispensable pour les grands sites Web, tels que ActiveMQ, RabbitMQ, Kafka et d'autres middlewares de file d'attente de messages populaires. Il est principalement utilisé. pour le découplage des activités, la réduction des pics de trafic et le traitement asynchrone des services avec de faibles performances en temps réel. Redis fournit des fonctions de publication/abonnement et de file d'attente de blocage, qui peuvent implémenter un système de file d'attente de messages simple. Cependant, cela n’est pas comparable à un middleware de messagerie professionnel.
3. Téléchargement, installation et déploiement de Redis
Site officiel de Redis en anglais.
Site Web chinois Redis.
Puisque les entreprises développent Redis, 99 % d'entre elles utilisent et installent la version Linux, cet article présente donc uniquement l'installation et le fonctionnement sous Linux. Les amis peuvent utiliser Baidu pour l'installation sous Windows. Accédez au site officiel ci-dessus et cliquez sur Télécharger pour télécharger le package d'installation .gz
et placez-le dans le répertoire /opt
sous Linux (j'ai installé la version 6.0.5 de Redis ici).
- La commande de décompression est :
tar -zxvf redis-6.0.5.tar.gz
La commande ci-dessus décompresse uniquement Redis. Si vous souhaitez installer Redis, vous avez besoin que le système Linux ait. un environnement gcc. Sinon, vous pouvez utiliser
yum install gcc-c++
pour installer, puis utilisergcc -v
pour afficher la version.
Si l'environnement Linux dispose déjà d'un environnement gcc, utilisez la commande suivante pour installer directement :
- La commande d'installation est :
make install
Après l'installation, la valeur par défaut est comme Tomcat, qui ne peut pas démarrer automatiquement au démarrage. Vous pouvez modifier l'attribut daemonize dans le fichier redis.conf sur yes.
- Démarrez le service Redis :
redis-server /myredis/redis.conf
(Voici le fichier de configuration Redis après modification des propriétés)
Vérifiez si le service Redis en arrière-plan est démarré :
ps -ef|grep redis
Activer le service Redis :
-
redis-cli -p 6379
Fermeture normale, les données seront enregistrées
Utilisez la commande shutdown
dans la ligne de commande redis pour fermer.
Un arrêt anormal peut facilement entraîner une perte de données
Panne de courant, arrêt manuel du processus Redis, etc.
Plusieurs autres commandes Redis
4. Quelques petites connaissances de Redis
Redis est un. processus unique et utilise un modèle de processus unique pour gérer les demandes des clients. Les réponses à des événements tels que la lecture et l'écriture sont obtenues en encapsulant la fonction epoll. La vitesse de traitement réelle de Redis dépend entièrement de l'efficacité d'exécution du processus principal.
epoll est une version améliorée d'epoll créée par le noyau Linux pour gérer de gros lots de descripteurs de fichiers. Il s'agit d'une version améliorée de l'interface IO multiplexée select/poll sous Linux. performances des programmes dans un grand nombre d’utilisations du processeur système lorsqu’il n’y a que quelques connexions simultanées actives.
Redis a 16 bases de données par défaut. Les indices commencent à zéro. La valeur par défaut initiale est d'utiliser la bibliothèque zéro. Vous pouvez utiliser la commande
SELECT <dbid></dbid>
pour vous connecter à celle spécifiée. base de données. La commandedbsize
peut afficher le nombre de clés dans la base de données actuelle etkeys *
afficher toutes les clés.flushdb
: Effacer la bibliothèque actuelle (à utiliser avec prudence)Flushall
: Effacer toutes les bibliothèques (à utiliser avec prudence) Utilisez )pour unifier la gestion des mots de passe. Les 16 bibliothèques ont toutes le même mot de passe, et soit elles sont toutes OK, soit aucune ne peut être connectée.
Les index Redis partent tous de zéro
Le port par défaut de Redis est 6379
Autres recommandations d'apprentissage gratuites associées : Tutoriel d'introduction à Redis
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le mode Redis Cluster déploie les instances Redis sur plusieurs serveurs grâce à la rupture, à l'amélioration de l'évolutivité et de la disponibilité. Les étapes de construction sont les suivantes: Créez des instances de redis étranges avec différents ports; Créer 3 instances Sentinel, Moniteur Redis Instances et basculement; Configurer les fichiers de configuration Sentinel, ajouter des informations d'instance Redis de surveillance et des paramètres de basculement; Configurer les fichiers de configuration d'instance Redis, activer le mode de cluster et spécifier le chemin du fichier d'informations de cluster; Créer un fichier nœuds.conf, contenant des informations de chaque instance redis; Démarrez le cluster, exécutez la commande CREATE pour créer un cluster et spécifiez le nombre de répliques; Connectez-vous au cluster pour exécuter la commande d'informations de cluster pour vérifier l'état du cluster; faire

Comment effacer les données Redis: utilisez la commande flushall pour effacer toutes les valeurs de clé. Utilisez la commande flushdb pour effacer la valeur clé de la base de données actuellement sélectionnée. Utilisez SELECT pour commuter les bases de données, puis utilisez FlushDB pour effacer plusieurs bases de données. Utilisez la commande del pour supprimer une clé spécifique. Utilisez l'outil Redis-CLI pour effacer les données.

Pour lire une file d'attente à partir de Redis, vous devez obtenir le nom de la file d'attente, lire les éléments à l'aide de la commande LPOP et traiter la file d'attente vide. Les étapes spécifiques sont les suivantes: Obtenez le nom de la file d'attente: Nommez-le avec le préfixe de "Fitre:" tel que "Fitre: My-Quyue". Utilisez la commande LPOP: éjectez l'élément de la tête de la file d'attente et renvoyez sa valeur, telle que la file d'attente LPOP: My-Queue. Traitement des files d'attente vides: si la file d'attente est vide, LPOP renvoie NIL et vous pouvez vérifier si la file d'attente existe avant de lire l'élément.

L'utilisation de la directive Redis nécessite les étapes suivantes: Ouvrez le client Redis. Entrez la commande (Verbe Key Value). Fournit les paramètres requis (varie de l'instruction à l'instruction). Appuyez sur Entrée pour exécuter la commande. Redis renvoie une réponse indiquant le résultat de l'opération (généralement OK ou -err).

L'utilisation des opérations Redis pour verrouiller nécessite l'obtention du verrouillage via la commande setnx, puis en utilisant la commande Expire pour définir le temps d'expiration. Les étapes spécifiques sont les suivantes: (1) Utilisez la commande setnx pour essayer de définir une paire de valeurs de clé; (2) Utilisez la commande Expire pour définir le temps d'expiration du verrou; (3) Utilisez la commande del pour supprimer le verrouillage lorsque le verrouillage n'est plus nécessaire.

La meilleure façon de comprendre le code source redis est d'aller étape par étape: familiarisez-vous avec les bases de Redis. Sélectionnez un module ou une fonction spécifique comme point de départ. Commencez par le point d'entrée du module ou de la fonction et affichez le code ligne par ligne. Affichez le code via la chaîne d'appel de fonction. Familiez les structures de données sous-jacentes utilisées par Redis. Identifiez l'algorithme utilisé par Redis.

Les causes de la perte de données redis incluent les défaillances de mémoire, les pannes de courant, les erreurs humaines et les défaillances matérielles. Les solutions sont: 1. Stockez les données sur le disque avec RDB ou AOF Persistance; 2. Copiez sur plusieurs serveurs pour une haute disponibilité; 3. Ha avec Redis Sentinel ou Redis Cluster; 4. Créez des instantanés pour sauvegarder les données; 5. Mettre en œuvre les meilleures pratiques telles que la persistance, la réplication, les instantanés, la surveillance et les mesures de sécurité.

Utilisez l'outil de ligne de commande redis (Redis-CLI) pour gérer et utiliser Redis via les étapes suivantes: Connectez-vous au serveur, spécifiez l'adresse et le port. Envoyez des commandes au serveur à l'aide du nom et des paramètres de commande. Utilisez la commande d'aide pour afficher les informations d'aide pour une commande spécifique. Utilisez la commande QUIT pour quitter l'outil de ligne de commande.
