Maison > base de données > Redis > Quels sont les trois liens de la philosophie Redis ?

Quels sont les trois liens de la philosophie Redis ?

(*-*)浩
Libérer: 2019-06-17 11:58:38
original
4372 Les gens l'ont consulté

Les Trois Philosophies de Redis sont les trois questions posées par l'examinateur à propos de Redis lors de l'entretien : "Qu'est-ce que c'est ? Pourquoi ? Comment l'utiliser ?".

Quels sont les trois liens de la philosophie Redis ?

Ces trois questions nécessitent une compréhension approfondie de Redis, et l'examinateur ne veut pas entendre toutes les réponses en ligne, mais se concentrera également sur votre propre compréhension.

Le contenu suivant provient d'Internet. (Apprentissage recommandé : Tutoriel vidéo Redis)

Redis est un type de journal open source, une base de données Key-Value et fournit des API dans plusieurs langues.

Redis est un système de stockage clé-valeur. Semblable à Memcached, il prend en charge relativement plus de types de valeurs stockées, notamment string (string), list (liste chaînée), set (set), zset (ensemble trié - ensemble ordonné) et hash (type de hachage). Ces types de données prennent tous en charge les opérations push/pop, ajout/suppression, intersection, union, différence et plus riches, et ces opérations sont toutes atomiques. Sur cette base, Redis prend en charge différentes méthodes de tri. Comme Memcached, les données sont mises en cache en mémoire pour garantir l'efficacité. La différence est que Redis écrira périodiquement les données mises à jour sur le disque ou écrira les opérations de modification dans des fichiers d'enregistrement supplémentaires, et sur cette base, la synchronisation maître-esclave (maître-esclave) est obtenue.

Redis est une base de données clé-valeur hautes performances. L'émergence de Redis a largement compensé les défauts du stockage clé/valeur tel que Memcached, et peut jouer un très bon rôle complémentaire aux bases de données relationnelles dans certaines situations. Il fournit Java, C/C++, C#, PHP, JavaScript, Perl, Object-C, Python, Ruby, Erlang et d'autres clients, ce qui est très pratique à utiliser.

Redis prend en charge la synchronisation maître-esclave. Les données peuvent être synchronisées du serveur maître vers n'importe quel nombre de serveurs esclaves, et le serveur esclave peut être un serveur maître associé à d'autres serveurs esclaves. Cela permet à Redis d'effectuer une réplication d'arborescence à un seul niveau. La sauvegarde peut écrire des données intentionnellement ou non. Étant donné que le mécanisme de publication/abonnement est entièrement implémenté, lorsque la base de données esclave synchronise l'arborescence n'importe où, elle peut s'abonner à un canal et recevoir l'enregistrement complet de publication des messages du serveur maître. La synchronisation est utile pour l'évolutivité et la redondance des données des opérations de lecture.

1. Cache des données de hotspot

En raison de la vitesse d'accès élevée et des types de données riches pris en charge par redis, redis est très approprié pour stocker les données de hotspot. De plus, combiné avec l'expiration, nous pouvons. définissez le délai d'expiration. Effectuez ensuite l'opération de mise à jour du cache. Cette fonction est la plus courante et est utilisée dans presque tous nos projets.

2. Application d'une activité à durée limitée

Dans Redis, vous pouvez utiliser la commande expire pour définir le temps de survie d'une clé, et Redis la supprimera une fois le délai écoulé. Cette fonctionnalité peut être utilisée dans des scénarios commerciaux tels que des informations promotionnelles à durée limitée et des codes de vérification de téléphone mobile.

3. Problèmes liés aux compteurs

Étant donné que la commande incrby peut atteindre un incrément atomique dans Redis, elle peut être utilisée dans des activités de vente flash à haute concurrence et dans la génération de numéros de série distribués. se reflète également dans Par exemple, limiter le nombre de SMS envoyés par un numéro de téléphone mobile, limiter le nombre de requêtes par minute par une interface, limiter le nombre d'appels par jour par une interface, etc.

4. Problèmes liés aux classements

Les bases de données relationnelles sont généralement lentes à interroger les classements, vous pouvez donc utiliser SortedSet de redis pour trier les données chaudes.

5. Verrouillage distribué

Bien sûr, nous pouvons appliquer cette fonctionnalité à d'autres scénarios qui nécessitent des verrous distribués. Combinée au délai d'expiration, il s'agit principalement d'éviter l'apparition d'un blocage.

6. Opération retardée

7. Pagination, recherche floue

Pour plus d'articles techniques liés à Redis, veuillez consulter le Tutoriel d'introduction à l'utilisation de la base de données Redis colonne Étudiez !

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