Maison >cadre php >Laravel >Développement Laravel : Comment utiliser Laravel Cache pour implémenter la mise en cache ?

Développement Laravel : Comment utiliser Laravel Cache pour implémenter la mise en cache ?

WBOY
WBOYoriginal
2023-06-13 10:01:322386parcourir

Développement Laravel : Comment utiliser Laravel Cache pour implémenter la mise en cache ?

Avec le développement des applications web, les problèmes de performances sont devenus un enjeu clé pour les applications web modernes. L'utilisation de la mise en cache est un moyen courant de résoudre les problèmes de performances des applications Web. Laravel fournit une solution de mise en cache flexible appelée mise en cache. La mise en cache est une technique permettant de stocker des données dans un stockage temporaire afin qu'elles puissent être récupérées et affichées plus rapidement ultérieurement. Cet article explorera comment la mise en cache Laravel est implémentée et utilisée.

Introduction à Laravel Cache

Laravel Cache fournit une API unifiée pour utiliser divers backends de mise en cache (tels que Memcached, Redis et le cache de fichiers). Étant donné que Laravel Cache est l'un des composants de Laravel, la mise en cache peut être rendue plus facile et plus pratique. Laravel Cache peut être utilisé n'importe où dans l'application pour améliorer les performances de l'application.

Configuration de Laravel Cache

Le backend par défaut de Laravel Cache est le pilote de fichiers. Cependant, nous pouvons facilement modifier le backend du cache dans le fichier config/cache.php. Par exemple, pour utiliser le backend du cache Memcached, vous pouvez ajouter le code suivant dans le fichier config/cache.php :

'cache' => [

'default' => env('CACHE_DRIVER', 'memcached'),

'stores' => [
    'memcached' => [
        'driver' => 'memcached',
        'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
        'sasl' => [
            env('MEMCACHED_USERNAME'),
            env('MEMCACHED_PASSWORD'),
        ],
        'options' => [
            // Memcached::OPT_CONNECT_TIMEOUT  => 2000,
        ],
        'servers' => [
            [
                'host' => env('MEMCACHED_HOST', '127.0.0.1'),
                'port' => env('MEMCACHED_PORT', 11211),
                'weight' => env('MEMCACHED_WEIGHT', 100),
            ],
        ],
    ],

    // ...
],

// ...

],

Dans cet exemple de code, nous utilisons le cache Memcached back-end.

Utilisation du cache Laravel

Utiliser la mise en cache dans votre application Laravel est très simple. Voici un exemple simple de la façon de stocker des données dans le cache :

// Stocker des données
Cache::put('key', 'value', $minutes);

// Obtenir des données
$value = Cache : :get('key');

// Déterminer si les données existent
if (Cache::has('key')) {

//

}

// Supprimer les données
Cache::forget(' key ');

Dans cet exemple de code, la méthode Cache::put() stocke les données dans le cache, la méthode Cache::get() récupère les données du cache et la méthode Cache::has() vérifie si les données existent. La méthode Cache::forget() supprime les données du cache.

Balises de cache

Les balises de cache sont un mécanisme permettant d'organiser plusieurs éléments de cache ensemble. Il est facile d'identifier et de vider votre cache à l'aide des balises de cache. Voici un exemple d'utilisation des balises de cache :

// Stocker les données dans des balises de cache
Cache::tags(['people', 'artists'])->put('John', $john, $minutes) ;
Cache::tags(['people', 'authors'])->put('Anne', $anne, $minutes);

// Effacer les données des balises mises en cache
Cache::tags( 'people' )->flush();

Dans cet exemple de code, nous utilisons des balises de cache pour organiser les données ensemble. Les balises de cache sont spécifiées à l'aide de la méthode Cache::tags(), et les données peuvent ensuite être stockées dans les balises à l'aide de put(). Enfin, nous pouvons utiliser la méthode flush() pour vider tous les caches associés à la balise.

Expiration du cache

Laravel Cache propose de nombreuses façons différentes de définir la date d'expiration du cache. La méthode la plus courante consiste à utiliser l'attribut $minutes dans la méthode put(). Par exemple, pour stocker un élément du cache pendant 10 minutes, vous pouvez utiliser le code suivant :

// Stocker un cache de 10 minutes
Cache::put('key', 'value',

// Stocker un cache permanent
Cache ::forever('key', 'value');

// Récupérer la valeur et la restaurer
$value = Cache::remember('users', $minutes, function () {

return DB::table('users')->get();

});

Dans cet exemple de code, la méthode Cache::put() stocke les données dans le cache, mais le cache n'est conservé que pendant 10 minutes. La méthode Cache::forever() stocke les données dans le cache mais ne définit pas de délai d'expiration. La méthode Cache::remember() recherchera l'élément "users" dans le cache. Si l'élément n'existe pas, la fonction de rappel est appelée et placée dans le cache. Les données mises en cache seront utilisées même si le cache expire.

Conclusion

Laravel Cache est une solution de mise en cache puissante qui peut aider à améliorer les performances des applications Web. Cet article présente le concept et l'utilisation de Laravel Cache et fournit un exemple de code pour aider les lecteurs à comprendre comment utiliser Laravel Cache pour implémenter la mise en cache. En utilisant Laravel Cache, les développeurs peuvent considérablement améliorer les performances des applications Web et offrir une meilleure expérience utilisateur.

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:
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