Menyimpan Cache dan Session pada Redis di Laravel

Untuk mempercepat kerja Laravel yang mungkin pernah denger dari beberapa artikel jika Laravel termasuk framework yang berat adalah dengan mencari cara agar lebih cepat. Salah satu teknik untuk mempercepat kinerja Laravel adalah simpan data cache dan session dengan Redis. Redis sendiri sudah mulai digunakan oleh banyak perusahaan kenamaan seperti twitter. Jadi apa salahnya kita coba untuk menggunakan dan mengimplementasikan proyek Laravel kita dengan redis ini 🙂

Saya skip cara install Laravel dan Redisnya. Pada artikel ini pastikan pada PC/Laptop/Server anda sudah terinstall redis dengan baik. Penggunaan Laravel dan redis sebenarnya sudah dijalaskan lebih detail di Dokumentasi Laravel ini [https://laravel.com/docs/5.4/redis].

Baik, artikel ini hanya mempermudah penggunaan sederhananya saja. Buka terminal pada proyek Laravel anda, lalu ketik composer require predis/predis untuk memasukan komponen/library predis yaitu redis client untuk PHP. Pastikan predis ini sudah berhasil terinstall ya di terminal anda.

Jika sudah terinstall predis-nya, mari kita coba langsung buat salah satu fungsi untuk melakukan set dan get nama yang tersimpan pada redis. Saya buat fungsi sederhana seperti dibawah ini.

Laravel redis

Terlihat, hanya set data dan get data saja, pastikan route nya juga sudah ditambahkan ya. Setelah itu, sekarang kita buka file pada project laravel anda yaitu file /config/session.php. Ganti ‘driver’ menjadi ‘driver’ => env(‘SESSION_DRIVER’, ‘redis’),. File ini untuk menyeting agar Session kita arahkan penyimpanannya ke redis. Jangan lupa untuk buka file .env, dan ubah SESSION_DRIVER menjadi SESSION_DRIVER=redis.

Sekarang kita setting agar Cache juga kita arahkan ke redis. Caranya buka file /config/cache.php, lalu ganti default menjadi redis, ‘default’ => env(‘CACHE_DRIVER’, ‘redis’),. Jika sudah, kita buka file /config/database.php lalu ubah seperti kode dibawah ini.

'redis' => [

        'cluster' => false,

        'default' => [
            'host' => env('REDIS_HOST', 'tcp://127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => 0,
        ],

    ],

Baik, jika sudah mari kita coba akses browsernya.

Lalu dibawah ini adalah gambar untuk get_redisnya.

Baik jika pada browser sudah didapatkan, mari kita coba lihat pada redis-cli nya apa benar ada data session dan cache yang sudah kita pasang di atas.

Pada gambar diatas, saya awalnya mencoba menyimpan data dengan session, lalu terlihat ada random key. Setelah itu saya coba matikan session dan pasang Cache apa juga bisa berjalan. Dan akhirnya bisa juga, terlihat pada keys * terdapat laravel:name sebagai Cache.

Penggunaan Redis di Laravel sangat mudah, anda bisa set, get ataupun delete tanpa setting data yang rumit dan tidak pusing 🙂

Selamat mencoba ya.

Reff lain: https://tuts.codingo.me/improve-site-loading-speed-using-redis/

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: