Maison > base de données > Redis > le corps du texte

Pourquoi Redis est plus rapide que MySQL

(*-*)浩
Libérer: 2019-06-17 13:49:07
original
4476 Les gens l'ont consulté

Redis met toutes les données en mémoire. La synchronisation sans données fonctionne normalement. Il n'est pas nécessaire de lire les données du disque, 0 fois IO. Le temps de réponse de la mémoire est d'environ 100 nanosecondes, ce qui constitue une base importante pour la vitesse rapide de Redis.

Mysql est un stockage persistant, qui est stocké sur le disque. La récupération impliquera une certaine quantité d'IO. Afin de résoudre ce goulot d'étranglement, des caches sont apparus, comme memcached, qui est. le plus utilisé de nos jours (appelé mc).

Pourquoi Redis est plus rapide que MySQLTout d'abord, l'utilisateur accède à mc S'il manque, accédez à mysql Ensuite, comme la mémoire et le disque dur, copiez les données dans la partie redis. de mc. mc et mc sont tous deux mis en cache et exécutés en mémoire, ce qui améliore considérablement la vitesse d'accès au Web avec un volume de données élevé. (Apprentissage recommandé : Tutoriel vidéo Redis)

Cependant, mc ne fournit que des structures de données simples, telles que le stockage de chaînes, redis fournit un grand nombre de structures de données, telles que ; comme String, list, set, hashset, sorted set, etc., le rendent beaucoup plus pratique pour les utilisateurs. Après tout, ils encapsulent une couche de fonctions pratiques et obtiennent le même effet, bien sûr, utilisez redis et abandonnez lentement mc.

Redis est monothread. Simplifiant la mise en œuvre des algorithmes, la mise en œuvre de structures de données concurrentes est non seulement difficile mais également difficile à tester. Deuxièmement, un seul thread évite la consommation causée par le changement de thread et le verrouillage et la libération des verrous. Pour le développement côté serveur, les verrous et le changement de thread nuisent généralement aux performances. Bien entendu, le single threading aura aussi ses défauts, ce qui est aussi le cauchemar de Redis : le blocage. Si l'exécution d'une commande est trop longue, d'autres commandes seront bloquées, ce qui est très fatal pour Redis, Redis est donc une base de données pour des scénarios d'exécution rapides.

Redis utilise epoll comme implémentation de la technologie de multiplexage d'E/S, et le propre modèle de traitement d'événements de Redis convertit les lectures, écritures, fermetures, etc. d'epoll en événements, pas en E/S réseau. Trop de temps perdu. Réalisez la surveillance de plusieurs lectures et écritures FD pour améliorer les performances.

mysql est utilisé pour stocker de manière persistante les données sur le disque dur, qui est puissant mais lent

redis est utilisé pour stocker les données fréquemment utilisées dans le cache et a une vitesse de lecture rapide

Pour plus d'articles techniques liés à Redis, veuillez visiter la colonne Tutoriel d'introduction sur l'utilisation de la base de données Redis pour apprendre !

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!