Heim >PHP-Framework >Laravel >So verwenden Sie Middleware zur Cache-Optimierung in Laravel

So verwenden Sie Middleware zur Cache-Optimierung in Laravel

王林
王林Original
2023-11-02 13:31:511031Durchsuche

So verwenden Sie Middleware zur Cache-Optimierung in Laravel

So verwenden Sie Middleware für die Caching-Optimierung in Laravel

Caching ist eine Optimierungstechnik, die die Leistung und Reaktionsfähigkeit Ihrer Anwendung erheblich verbessern kann. Im Laravel-Framework können wir Middleware verwenden, um das Caching zu optimieren. In diesem Artikel wird detailliert beschrieben, wie Middleware zur Cache-Optimierung in Laravel verwendet wird, und es werden spezifische Codebeispiele bereitgestellt.

  1. Middleware installieren und konfigurieren
    Zuerst müssen wir das Cache-Paket von Laravel installieren. Zur Installation können Sie den folgenden Befehl verwenden:

composer require illuminate/cache

Nach Abschluss der Installation müssen wir den Cache konfigurieren. In der Datei config/cache.php können Sie den Cache-Treiber, die Cache-Zeit, den Standard-Cache-Treiber usw. festlegen.

  1. Cache-Middleware erstellen
    Erstellen Sie eine neue Middleware mit dem folgenden Befehl:

php artisan make:middleware CacheMiddleware

Dann befindet sich die neu erstellte CacheMiddleware.php-Datei im Verzeichnis app/Http/Middleware. In diese Datei können wir unsere Caching-Logik schreiben.

<?php

namespace AppHttpMiddleware;

use Closure;
use IlluminateSupportFacadesCache;

class CacheMiddleware
{
    public function handle($request, Closure $next, $key, $time = null)
    {
        $cacheKey = $key.'_'.$request->getRequestUri();

        if (Cache::has($cacheKey)) {
            return Cache::get($cacheKey);
        }

        $response = $next($request);

        if (!is_null($time)) {
            Cache::put($cacheKey, $response->getContent(), $time);
        }

        return $response;
    }
}

Im obigen Code generieren wir zunächst einen Cache-Schlüssel und setzen ihn auf eine Kombination des Anforderungs-URI. Anschließend prüfen wir, ob der Schlüssel im Cache vorhanden ist. Wenn vorhanden, geben wir die zwischengespeicherten Daten direkt zurück. Wenn es nicht vorhanden ist, verarbeiten wir die Anfrage weiter und speichern den Antwortinhalt im Cache für den optionalen Parameter $time.

  1. Middleware registrieren
    Damit das Laravel-Framework unsere Middleware verwendet, müssen Sie die Middleware im $routeMiddleware-Array der Datei app/Http/Kernel.php registrieren.
protected $routeMiddleware = [
    // other middlewares
    'cache' => AppHttpMiddlewareCacheMiddleware::class,
];

Im obigen Code registrieren wir die Cache-Middleware als „Cache“.

  1. Middleware verwenden
    Die Verwendung von Middleware ist sehr einfach. Verwenden Sie einfach die Middleware-Methode in der Route oder im Controller.
Route::get('/products', 'ProductController@index')->middleware('cache:products', 60);

Im obigen Code wenden wir die Cache-Middleware auf die /products-Route an und definieren den Cache-Schlüssel als „Produkte“ und die Cache-Zeit als 60 Sekunden.

  1. Ausführen und testen
    Jetzt haben wir alle Schritte zur Verwendung von Middleware zur Cache-Optimierung in Laravel abgeschlossen. Wir können den folgenden Befehl verwenden, um den lokalen Entwicklungsserver zu starten und dann zum Testen über den Browser auf die entsprechende URL zuzugreifen:

php artisan Serve

Greifen Sie zum ersten Mal im Browser auf http://localhost:8000/products zu Sie besuchen, werden die Daten aus der Datenbank gelesen und im Cache gespeichert. Beim zweiten und den folgenden Besuchen werden Daten direkt aus dem Cache abgerufen, wodurch die Reaktionsgeschwindigkeit und Leistung verbessert werden.

Zusammenfassung
Durch die Verwendung der vom Laravel-Framework bereitgestellten Middleware können wir die Cache-Optimierung einfach implementieren und die Leistung und Reaktionsgeschwindigkeit der Anwendung verbessern. Durch das Studium dieses Artikels beherrschen Sie die Methode zur Verwendung von Middleware zur Cache-Optimierung in Laravel und verfügen über entsprechende Codebeispiele. Ich hoffe, dieser Artikel ist hilfreich für Sie, vielen Dank fürs Lesen!

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Middleware zur Cache-Optimierung in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn