Redis, en tant que base de données en mémoire offrant d'excellentes performances, propose une variété de scénarios d'application dans les sociétés Internet. Cet article présente les scénarios dans lesquels l'auteur utilise Redis dans des projets.
Principalement présenté sous les aspects suivants :
Serrures distribuées (apprentissage recommandé : Tutoriel vidéo Redis)
Limiteur de courant d'interface
Cache de commande
Traitement de la cohérence des données Redis et DB
Empêcher la pénétration du cache et les avalanches
Distribué partage de session
Cache de commande
La structure de stockage de l'intégralité de la commande est la suivante :
Utiliser celui de Redis structure de données zset pour stocker les commandes de chaque utilisateur, les organiser dans l'ordre inverse par heure de commande, utiliser l'identifiant unique de l'utilisateur comme clé, la collection de commandes de l'utilisateur comme valeur, utiliser l'horodatage de l'heure de création de la commande + les trois derniers chiffres du numéro de commande comme score
Pourquoi ne pas simplement utiliser l'horodatage de l'heure de la commande comme score ? Étant donné que l'heure de la commande n'est précise qu'à la seconde près, plusieurs commandes peuvent apparaître dans la même seconde, ce qui entraînera le même score. L'ajout des trois derniers chiffres du numéro de commande peut essentiellement éviter cette situation.
Ne placez que les N premières commandes de l'utilisateur, car peu d'utilisateurs verront les commandes d'il y a longtemps, cela permettra donc d'économiser beaucoup d'espace. Si un utilisateur a besoin de vérifier les commandes après les N premières commandes, il peut les interroger à partir de la base de données. Bien entendu, la probabilité que cela se produise est relativement faible.
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!