Strategi Pembatasan Laju dan Penyimpanan Tembolok API
Lindungi backend dan kurangi biaya dengan menerapkan pembatasan laju untuk menghentikan penyalahgunaan serta lapisan penyimpanan tembolok yang mengurangi pekerjaan berulang dan mempercepat respons.
Strategi Pembatasan Laju dan Penyimpanan Tembolok API adalah pelajaran Indie Hacker Mobile Apps gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Indie Hacker Mobile Apps, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Indie Hacker Mobile Apps mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
Why Limit and Cache
As your app grows, two problems appear: abusive or runaway clients hammering your API, and the same expensive work repeated needlessly. Rate limiting and caching solve both.
Together they protect uptime and slash costs.
What Is Rate Limiting?
Rate limiting caps how many requests a client can make in a window — for example 100 requests per minute. Beyond that, requests are rejected or delayed.
It defends against abuse, bugs, and accidental loops.
The Token Bucket
A common algorithm is the token bucket: each request consumes a token; tokens refill at a steady rate. When the bucket is empty, requests are throttled.
let tokens = 5;
function allowRequest() {
if (tokens > 0) { tokens--; return true; }
return false;
}
console.log(allowRequest());
console.log(allowRequest());Communicating Limits
Good APIs return headers like X-RateLimit-Remaining and a 429 Too Many Requests status with a Retry-After hint.
This lets well-behaved clients back off gracefully.
What Is Caching?
Caching stores the result of expensive work so repeat requests return instantly without recomputing or re-fetching.
A cache hit saves database load, compute, and time.
Cache Keys and TTL
Each cached entry has a key identifying the request and a TTL (time to live) after which it expires and is refreshed.
const cache = new Map();
function setCache(key, value, ttlMs) {
cache.set(key, { value, expires: Date.now() + ttlMs });
}
setCache('user:1', { name: 'Alice' }, 60000);
console.log(cache.get('user:1'));Cache Layers
Caching happens at multiple levels:
- Client: in-app cache
- CDN: at the edge near users
- Server: in-memory or Redis
Each layer cuts work from the one below it.
Cache Invalidation
The hard part: stale data. When the underlying data changes, the cache must be invalidated or it serves outdated results.
Strategies include short TTLs, event-based invalidation, and versioned keys.
What Not to Cache
Avoid caching:
- Highly personalized or sensitive data without scoping by user
- Rapidly changing values where staleness misleads
Cache what is read often and changes rarely.
Combining the Two
Rate limiting and caching reinforce each other. Caching reduces how often you hit the limit, and limits protect uncached, expensive endpoints from abuse.
Apply both per endpoint based on cost and sensitivity.
A Protection Checklist
Before scaling:
- Rate limit per user and per IP
- Return 429 with Retry-After
- Cache hot, slow-changing reads with sensible TTLs
- Plan invalidation up front
- Never cache sensitive data unscoped
Resilient and cheap to run.
Quick Check
Test your rate limiting and caching knowledge.
Recap
You learned to protect and speed up your backend:
- Rate limiting caps requests and defends against abuse
- Token bucket is a common algorithm; return 429 with Retry-After
- Caching stores expensive results across client, CDN, and server
- Use TTLs and plan invalidation to avoid stale data
- Combine both per endpoint by cost and sensitivity
Resilient, fast, and cheap to operate.
Belajar Indie Hacker Mobile Apps dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Strategi Pembatasan Laju dan Penyimpanan Tembolok API” gratis?
Ya — teks lengkap “Strategi Pembatasan Laju dan Penyimpanan Tembolok API” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Indie Hacker Mobile Apps, upgrade ke CoddyKit PRO. Kursus Indie Hacker Mobile Apps mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Strategi Pembatasan Laju dan Penyimpanan Tembolok API”?
Lindungi backend dan kurangi biaya dengan menerapkan pembatasan laju untuk menghentikan penyalahgunaan serta lapisan penyimpanan tembolok yang mengurangi pekerjaan berulang dan mempercepat respons. Kamu berlatih Indie Hacker Mobile Apps dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Indie Hacker Mobile Apps?
Tidak diperlukan pengalaman sebelumnya. Indie Hacker Mobile Apps di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Strategi Pembatasan Laju dan Penyimpanan Tembolok API” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Indie Hacker Mobile Apps ini?
Ya. Setiap pelajaran Indie Hacker Mobile Apps menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mengoptimalkan BaaS untuk Performa
- Integrasi Backend Khusus
- Praktik Terbaik Keamanan Aplikasi Seluler
- Strategi Pembatasan Laju dan Penyimpanan Tembolok API