Merhaba arkadaşlar, bugün sizlere Laravel’de cache (önbellek) kullanımı ve bu sayede web uygulamalarınızın performansını nasıl artırabileceğinizi anlatacağım. Laravel, cache işlemlerini kolaylaştıran birçok yerleşik özellik sunar. Eğer uygulamanızın hızını artırmak ve kullanıcı deneyimini iyileştirmek istiyorsanız, bu yazı tam size göre!
Cache, sık kullanılan verilerin geçici olarak saklanması işlemidir. Bu sayede, veritabanı sorguları veya karmaşık hesaplamalar gibi zaman alıcı işlemler tekrar tekrar yapılmaz ve uygulamanızın performansı artar.
Cache Yapılandırması
Laravel, cache işlemleri için birçok farklı sürücü sunar. Bunlar arasında file, database, redis ve memcached gibi seçenekler bulunur. Cache yapılandırmasını config/cache.php dosyasından yapabilirsiniz. Örneğin, Redis kullanmak için:
'default' => env('CACHE_DRIVER', 'redis'),
Laravel’de cache işlemleri oldukça kolaydır. İşte temel cache işlemleri:
Veriyi Cache’e Alma
Veriyi cache’e almak için put metodunu kullanabilirsiniz:
Cache::put('key', 'value', $seconds);
Örneğin, bir kullanıcı listesini 10 dakika boyunca cache’e alalım:
$users = DB::table('users')->get();Cache::put('users', $users, 600);
Cache’ten veri okumak için get metodunu kullanabilirsiniz:
$value = Cache::get('key');
Eğer veri cache’te yoksa, varsayılan bir değer dönebilirsiniz:
$value = Cache::get('key', 'default');
Veriyi kalıcı olarak cache’e almak için forever metodunu kullanabilirsiniz:
Cache::forever('key', 'value');
Cache’ten veri silmek için forget metodunu kullanabilirsiniz:
Cache::forget('key');
Cache Tags (Etiketler)
Laravel, cache’leri etiketlemek için tags metodunu sunar. Bu sayede, benzer cache’leri gruplayabilir ve toplu işlemler yapabilirsiniz:
Cache::tags(['people', 'artists'])->put('John', $john, $seconds);Cache::tags(['people', 'authors'])->put('Anne', $anne, $seconds);
Etiketlenmiş cache’leri silmek için:
Cache::tags('people')->flush();
Cache ile Veritabanı Sorgularını Hızlandırma
Veritabanı sorgularını cache’e alarak uygulamanızın performansını artırabilirsiniz. Örneğin, bir kullanıcı listesini cache’e alalım:
$users = Cache::remember('users', $seconds, function () { return DB::table('users')->get();});
Bu kod, users anahtarı ile veriyi cache’e alır ve belirtilen süre boyunca cache’ten okur.
Laravel’de cache kullanımı, web uygulamalarınızın performansını artırmanın en etkili yollarından biridir. Eğer uygulamanızın hızını artırmak ve kullanıcı deneyimini iyileştirmek istiyorsanız, cache özelliklerini etkili bir şekilde kullanabilirsiniz. Bir sonraki yazımda, Laravel’de Queue (Kuyruk) Kullanımı konusuna değineceğim. Görüşmek üzere!