Redis est une base de données de valeurs-clés de type journal open source écrite en langage ANSI C, prend en charge le réseau, peut être basée sur la mémoire et persistante, et fournit des API dans plusieurs langues. Aujourd'hui, nous allons examiner quelques scénarios d'application de PHP combinés avec Redis, j'espère que cela sera utile à tout le monde.
Avant-propos
Dans certains cas, certains étudiants ont expliqué pourquoi le type chaîne ne peut pas être utilisé. Le type chaîne est tout à fait réalisable
I. suggérer Veuillez jeter un œil à ma rubrique "Utilisation avancée de Redis", qui présente les avantages de l'utilisation des types de hachage
Comptage des dimensions du produit
Pour les produits, comptez les likes, les commentaires, les évaluations et les vues
En parlant de commerce électronique, les produits sont définitivement indissociables, et les produits accessoires ont différents comptes (j'aime, commentaires, évaluations, vues, etc.)
Les commandes Redis sont toutes atomique, vous pouvez facilement utiliser INCR, DECR et d'autres commandes pour compter.
Utiliser le type Redis : Hash Si vous n'êtes pas familier avec les types de données Redis, vous pouvez vous référer à
http://redis.io/topics/data-types-intro
product définit un produit clé : et définit une clé de hachage pour chaque valeur, telle que like number like_num
1 2 3 4 5 6 |
|
User dimension count
pour la dynamique de l'utilisateur nombre, comptage du nombre d'abonnés, de fans, de produits aimés, de publications, etc.
Le comptage des dimensions utilisateur et le comptage des dimensions du produit utilisent tous deux le hachage. Définissez une clé pour l'utilisateur et définissez une clé de hachage pour chaque valeur pour l'utilisateur :
Pour. exemple, le nombre de followers qui suivent
1 2 3 4 5 6 |
|
/ Attention, il peut exister dans un ensemble trié, et le score peut être horodaté
Le l'ensemble par défaut est trié par ordre croissant par scoreDe cette façon, pour trouver les amis communs de deux personnes, il vous suffira peut-être d'utiliser la commande d'intersection
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
Comparé à la simple valeur-clé de memcached stockage, les nombreuses structures de données de Redis (liste, ensemble, ensemble trié, hachage, etc)
REMARQUE : RPUSH pagewviews.user : EXPIRE pagewviews.user : 60 //Remarque pour mettre à jour le délai d'attente
En tant que site Web de commerce électronique, il est inévitable d'être attaqué par divers spams (commentaires de spam, publication de produits de spam, publicités, brossage du classement de votre propres produits, etc.)
Développer une série de règles anti-spam pour ces spams, dont certaines peuvent utiliser redis pour une analyse en temps réel
Par exemple : pas plus de 2 commentaires dans 1 minute, moins de 5 commentaires en 5 minutes, etc. (plus de mécanismes/règles doivent être combinés avec de la bave)
Un ensemble trié régulier enregistre les opérations de l'utilisateur au cours du dernier jour(Pourquoi ne pas les enregistrer tous ? Économiser de la mémoire , toutes les opérations seront enregistrées dans le journal, puis utiliseront hadoop pour une analyse et des statistiques plus complètes)
Chronologie/Flux utilisateur
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
redis est principalement utilisé ici, le cache utilise
1 2 3 4 5 6 |
|
La dernière liste de présentation de la structure d'ensemble triée par produits
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
Utiliser Redis comme file d'attente de messages
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
Recommandations associées :
L'extension Redis de PHP depuis l'installation jusqu'à l'utilisation
PHP utilise Redis pour réaliser le partage d'instances de session
Utilisation du cache Phalapi et de l'extension 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!