1. Latar Belakang
Mengetahui perintah CLI (SET & GET ) saja tidak cukup. Tantangan sebenarnya adalah bagaimana mengintegrasikan Redis ke dalam kode aplikasi (application layer) agar beban database berkurang secara otomatis. Kita akan melihat bagaimana pola ini diterapkan dalam kode.
2. Pembahasan: Pola "Cache-Aside"
Pola yang paling umum digunakan adalah Cache-Aside (Lazy Loading). Alurnya:
Aplikasi cek Redis.
Jika ada (Hit), kembalikan data.
Jika tidak (Miss), ambil dari Database -> Simpan ke Redis -> Kembalikan data.
3. Praktek: Contoh Implementasi
A. Studi Kasus: Node.js (Express + node-redis)
Di Node.js, kita menulis logika Check-Fetch-Store sec
B. Studi Kasus: PHP (Laravel Framework)
Framework modern seperti Laravel memiliki abstraksi bernama Cache::remember. Fungsi ini menangani logika if-else (Cek-Ambil-Simpan) secara otomatis dalam satu blok kode.
4. Analogi
Aplikasi Backend adalah Resepsionis Hotel.
Tamu (User) bertanya: "Siapa nama tamu di kamar 101?"
Resepsionis melihat Catatan Kecil di Meja (Redis). Jika ada, langsung jawab.
Jika tidak ada, Resepsionis lari ke Ruang Arsip Belakang (Database), mencari bukunya, mencatat jawabannya di kertas kecil di meja, baru menjawab tamu.
5. Kendala
Serialisasi Data: Redis hanya menyimpan string/binary. Objek kompleks (JSON/Class) harus diubah jadi string (
JSON.stringify) saat disimpan dan diubah balik (JSON.parse) saat diambil.Koneksi: Membuka tutup koneksi Redis di setiap request bisa berat. Gunakan Connection Pooling atau Singleton Pattern.
6. Kesimpulan
Implementasi caching pada backend sangat bergantung pada logika "Check-Fetch-Store". Di Node.js kita melakukannya secara manual, sementara framework modern seperti Laravel sudah menyediakannya secara otomatis.
7. Daftar Pustaka
Node Redis. (2024). Redis Client for Node.js Documentation. GitHub Repository. Diakses dari https://github.com/redis/node-redis
Laravel Documentation. (2024). Cache: Configuration and Usage. Laravel.com. Diakses dari https://laravel.com/docs/cache
Fowler, M. (2012). Patterns of Enterprise Application Architecture. Addison-Wesley Professional.
Redis.io. (n.d.). Client-side caching in Redis.
- Mengambil praktek nya dari google gemini
