Redis est une base de données de mémoire K-K écrite en langage ANSI C avec d'excellentes performances, prise en charge réseau et persistance, et fournit des API dans plusieurs langues. Ses types couramment utilisés sont principalement String, List, Hash, Set et ZSet.
Pourquoi Redis est-il si rapide ?
1. Entièrement basées sur la mémoire, la plupart des requêtes sont de pures opérations de mémoire, très rapides. Les données sont stockées en mémoire, comme HashMap. L'avantage de HashMap est que la complexité temporelle de la recherche et de l'opération est O(1)
2. simple. La structure des données dans Redis est spécialement conçue ; 3. Il utilise un seul thread pour éviter les changements de contexte inutiles et les conditions de concurrence. Il n'y a pas de commutation causée par le multi-processus ou le multi-threading. CPU, et il n'est pas nécessaire de prendre en compte divers verrous. Il n'y a pas de problème de verrouillage et de libération des verrous, et il n'y a pas de consommation de performances causée par d'éventuels blocages 4. , IO non bloquants ; 5. Les modèles sous-jacents utilisés sont différents, les méthodes d'implémentation sous-jacentes et les protocoles d'application pour la communication avec le client sont différents. Redis construit directement son propre mécanisme de VM, car les appels système généraux. fonctions système, ce qui fera perdre un certain temps. Déplacer et demander L'implémentation interne utilise epoll, en utilisant epoll + un framework d'événements simple implémenté par lui-même. La lecture, l'écriture, la fermeture et la connexion dans epoll sont toutes converties en événements, puis utilisez la fonction de multiplexage d'epoll pour ne jamais perdre de temps sur io. Pour plus d'articles techniques sur Redis, veuillez visiter la colonneTutoriel d'utilisation de 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!