Digital Transformation
On-Demand ISR (Incremental Static Regeneration)
TL;DR: On-Demand ISR adalah fitur Next.js yang memungkinkan halaman statis diperbarui sewaktu-waktu lewat fungsi revalidateTag atau revalidatePath. Berbeda dengan ISR berbasis interval, mekanisme ini ideal untuk konten editorial yang berubah dadakan, seperti harga, status stok, atau artikel yang baru diedit.
Apa itu On-Demand ISR?
On-Demand ISR adalah variasi dari ISR di Next.js App Router yang memberikan kendali penuh kapan halaman statis akan dibangun ulang. Ketimbang menunggu interval revalidate, developer dapat memicu pembaruan dari server actions, webhook, atau panel admin dengan memanggil revalidateTag atau revalidatePath. Konsep ini sangat dekat dengan strategi stale-while-revalidate di HTTP cache, tetapi diatur di level framework.
Cara Kerja Singkat
Setiap fetch data dapat diberi tag tertentu, misalnya cache: { tags: ['produk-123'] }. Saat data berubah, panggil revalidateTag('produk-123') di server action. Halaman yang menggunakan tag itu langsung ditandai stale dan akan dibangun ulang pada permintaan berikutnya. Praktis ini dipakai di Atmo LMS untuk merefresh halaman katalog kursus setelah admin mengubah materi, sehingga TTFB tetap rendah karena hasil regenerasi dilayani dari CDN.
| Pemicu | Contoh Pemakaian |
|---|---|
| revalidateTag | Refresh banyak halaman yang berbagi tag data |
| revalidatePath | Refresh URL spesifik secara langsung |
| Webhook CMS | Picu revalidasi otomatis saat publish |
Kenapa Penting untuk Marketer?
Marketer Indonesia sering menghadapi kebutuhan update harga, promo, atau jadwal kelas yang tidak dapat menunggu cron 60 menit. Dengan On-Demand ISR, perubahan dari panel admin atau CMS terlihat di sisi user dalam hitungan detik tanpa kehilangan keuntungan rendering statis, termasuk skor Core Web Vitals yang stabil dan biaya server yang efisien.
Pertanyaan Umum
Apa beda On-Demand ISR dengan SSR?
SSR membangun halaman setiap request, sedangkan On-Demand ISR menyimpan hasil build di edge dan baru meregenerasi saat ada perintah revalidasi. Hasilnya lebih murah dan lebih cepat untuk konten yang jarang berubah dadakan.
Apakah aman dipanggil dari webhook?
Aman, asalkan endpoint route handler dilindungi dengan token rahasia. Praktik standar industri menyarankan validasi signature webhook sebelum memanggil revalidateTag.
Istilah Terkait