Pendahuluan Pernah nggak kepikiran, kenapa Laravel terasa lemot banget pas trafik aplikasi mulai naik drastis di jam sibuk? Awalnya saya pikir masalahnya cuma di query database yang kurang index, tapi ternyata masalahnya ada di beban baca-tulis yang berulang-ulang ke disk. Redis akhirnya jadi penyelamat saya, karena fungsinya bukan cuma buat nyimpen session, tapi jadi "otak" kedua aplikasi biar nggak perlu bolak-balik nanya ke MySQL yang sudah kepayahan. Tips & Best Practices Di banyak project, biasanya saya mulai dari memisahkan koneksi Redis antara cache dan queue agar prosesnya nggak saling tabrakan saat trafik lagi tinggi. Selanjutnya, jangan pernah lupa pakai prefix yang jelas supaya data di Redis nggak berantakan kalau satu server dipakai untuk banyak environment atau beberapa aplikasi sekaligus. Terakhir, selalu manfaatkan fitur TTL (Time-to-Live) saat menyimpan cache, karena membiarkan cache menumpuk tanpa batas cuma bakal bikin RAM server kita penuh sia-sia. Co...
Pendahuluan Pernah nggak kepikiran, kenapa Laravel terasa sangat kencang di awal development, tapi tiba-tiba lemot banget pas datanya sudah ribuan di database? Saya sering banget ketemu situasi di mana fitur dashboard yang kompleks bikin server ngos-ngosan karena query yang dipanggil berulang kali setiap kali user refresh halaman. Caching bukan cuma soal bikin web cepat, tapi soal menjaga sanity kita sebagai developer supaya aplikasi tetap stabil saat trafik melonjak. Tips & Best Practices Di banyak project, biasanya saya mulai dari menyeleksi query mana yang benar-benar statis. Jangan asal cache semua hal, karena nantinya data yang tampil malah jadi basi. Kedua, saya selalu prefer pakai Redis dibandingkan file driver di produksi, terutama kalau aplikasi sudah mulai di-scale. Ketiga, jangan pernah lupa untuk memikirkan skema invalidasi cache; seringkali yang bikin pusing bukan caching-nya, tapi pas mau update data dan cache-nya masih nahan data lama. Contoh Kode Biasanya saya pakai...