Rumah >rangka kerja php >Laravel >Cara menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel

Cara menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel

王林
王林asal
2023-11-02 13:31:511027semak imbas

Cara menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel

Cara menggunakan perisian tengah untuk pengoptimuman caching dalam Laravel

Caching ialah teknik pengoptimuman yang boleh meningkatkan prestasi dan responsif aplikasi anda dengan ketara. Dalam rangka kerja Laravel, kita boleh menggunakan perisian tengah untuk mengoptimumkan caching. Artikel ini akan memperkenalkan secara terperinci cara menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel dan memberikan contoh kod khusus.

  1. Pasang dan konfigurasikan perisian tengah
    Pertama, kita perlu memasang pakej cache Laravel. Anda boleh menggunakan arahan berikut untuk memasang:

komposer memerlukan pencahayaan/cache

Selepas pemasangan selesai, kita perlu mengkonfigurasi cache. Dalam fail config/cache.php, anda boleh menetapkan pemacu cache, masa cache, pemacu cache lalai, dsb.

  1. Buat Cache Middleware
    Buat middleware baharu menggunakan arahan berikut:

php artisan make:middleware CacheMiddleware

Kemudian, fail CacheMiddleware.php yang baru dibuat boleh didapati dalam direktori app/Http.Middleware Dalam fail ini kita boleh menulis logik caching kita.

<?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;
    }
}

Dalam kod di atas, kami mula-mula menjana kunci cache, menetapkannya kepada gabungan URI permintaan. Kami kemudian menyemak sama ada kunci itu wujud dalam cache. Jika ia wujud, kami akan memulangkan data cache secara langsung. Jika ia tidak wujud, kami akan terus memproses permintaan dan menyimpan kandungan respons ke cache untuk parameter pilihan $time.

  1. Daftar Middleware
    Untuk menjadikan rangka kerja Laravel menggunakan middleware kami, anda perlu mendaftarkan middleware dalam tatasusunan $routeMiddleware bagi fail app/Http/Kernel.php.
protected $routeMiddleware = [
    // other middlewares
    'cache' => AppHttpMiddlewareCacheMiddleware::class,
];

Dalam kod di atas, kami mendaftarkan perisian tengah cache sebagai 'cache'.

  1. Menggunakan middleware
    Menggunakan middleware adalah sangat mudah. Hanya gunakan kaedah middleware dalam laluan atau pengawal.
Route::get('/products', 'ProductController@index')->middleware('cache:products', 60);

Dalam kod di atas, kami menggunakan perisian tengah cache pada laluan /products dan mentakrifkan kunci cache sebagai 'produk' dan masa cache sebagai 60 saat.

  1. Laksanakan dan Uji
    Kini, kami telah menyelesaikan semua langkah menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel. Kita boleh menggunakan arahan berikut untuk memulakan pelayan pembangunan tempatan, dan kemudian mengakses URL yang sepadan melalui penyemak imbas untuk ujian:

php artisan serve

Akses http://localhost:8000/products dalam penyemak imbas, kali pertama anda lawati, Data akan dibaca daripada pangkalan data dan disimpan dalam cache. Lawatan kedua dan seterusnya akan mengambil data terus daripada cache, meningkatkan kelajuan dan prestasi tindak balas.

Ringkasan
Dengan menggunakan perisian tengah yang disediakan oleh rangka kerja Laravel, kami boleh melaksanakan pengoptimuman cache dengan mudah dan meningkatkan prestasi dan kelajuan tindak balas aplikasi. Melalui mengkaji artikel ini, anda telah menguasai kaedah menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel dan mempunyai contoh kod yang sepadan. Saya harap artikel ini berguna kepada anda, terima kasih kerana membaca!

Atas ialah kandungan terperinci Cara menggunakan perisian tengah untuk pengoptimuman cache dalam Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn