cache
Catatan teknis seputar web development, DevOps, dan integrasi AI.
3 artikel
- 11.21backend
Filter bidang tanpa menelan baris global
Nambah parameter ?bidang= di endpoint publik bukan cuma soal satu klausa WHERE. Baris global harus tetap tayang di semua scope.
TL;DR: Awalnya filter bidang cuma pakai WHERE biasa jadi konten global yang NULL malah kelewat nggak muncul. Akhirnya querynya dibenerin jadi ikut nampilin yang NULL sama ALL terus ditambah validasi 400 kalau bidangnya ngaco. Sekalian cache key ditambahin bidang dan teks intro pilar dipindah ke tabel settings biar gampang diatur.
#go#mysql#api - 12.24backend
Invalidasi Cache Redis: Naikkan Versi, Jangan Hapus Key
Ganti cara invalidasi cache jawaban chat AI: bump versi namespace dengan INCR supaya key lama unreachable, bukan dihapus satu-satu.
TL;DR: Jawaban chat AI yang di-cache di Redis jadi basi tiap artikel berubah, dan masalah utamanya bukan SCAN yang blocking melainkan fan-out invalidasi yang rumit. Solusinya versioned key: tiap mutasi nge-bump counter versi via INCR, key lama jadi unreachable dan mati sendiri lewat TTL 24 jam. Bonusnya ada lookup mundur ke versi sebelumnya dan fallback persona saat LLM down.
#redis#caching#cache-invalidation - 18.30ai
AI yang tahu lagi kerjain apa: grounding ke commit terbaru
Chat AI blog yang jawab 'lagi kerjain apa' dari commit history lokal — port sempit, cache version namespace, dan mining istilah dari commit message.
#fastapi#redis#cache-invalidation