Maison > développement back-end > tutoriel php > Le nouveau Cache::flexible() de Laravel

Le nouveau Cache::flexible() de Laravel

王林
Libérer: 2024-09-12 14:15:02
original
956 Les gens l'ont consulté

The new Cache::flexible() of Laravel

Attendre qu'un grand ensemble de données soit calculé à chaque fois que vous empruntez un itinéraire, c'est nul ! Et les utilisateurs ne veulent pas attendre, tout le monde a une rétention courte de nos jours, nous avons donc corrigé ce problème il y a des années en utilisant Cache. Laravel dispose d'un Cache Fascad pour nous aider à mettre en cache les données, et nous utilisons Cache::remember() qui est une excellente méthode pour mettre en cache certaines données pendant un certain temps jusqu'à leur expiration.

Mais lors d'un événement récent, Laravel a annoncé la nouvelle fonctionnalité à venir dans Cache Fascad appelée "flexible". Il utilise la nouvelle fonction defer() de laravel en arrière-plan.

Comment fonctionne Cache::flexible()

Cache::flexible() est très similaire à Cache::remember() que nous connaissons déjà et a très peu de changements dans les codes mais un impact énorme sur les performances. Vous fournissez deux valeurs pour le temps au lieu de 1 contrairement à Cache::remember().
Si vous dépassez 5 et 10 comme délai pour Cache::flexible(), alors lorsqu'un utilisateur accède ou visite l'itinéraire pour la première fois, l'utilisateur doit attendre que les valeurs soient mises en cache et lorsqu'il continue d'emprunter l'itinéraire dans les 5 secondes. puis il renvoie simplement les valeurs mises en cache de la même manière que Cache::remember(). Mais voici la partie intéressante : si un utilisateur emprunte l'itinéraire dans un délai de 5 à 10 secondes (comme nous l'avons fourni), Laravel fournira toujours les valeurs mises en cache pour la première visite dans ce délai et démarrera un travailleur en arrière-plan pour mettre à nouveau en cache les valeurs. Et lorsque l'utilisateur visite à nouveau l'itinéraire, il obtient des données actualisées mais cette fois sans attendre que les données soient mises en cache ou calculées contrairement à Cache::remember().

Cela peut être difficile à comprendre pour certains d'entre vous, je vous recommande de lire cet article que j'ai écrit à ce sujet de manière plus approfondie et avec des exemples concrets : https://laraveleco.com/cache-flexible-method-of-laravel /

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!

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