CODEBOOK
Website Platform Belajar Dan Edukasi
By Shadownex 2025-2026
Materi/Redis Caching & Message Queues
Backend

Redis Caching & Message Queues

Tingkatkan kecepatan sistem hingga ribuan kali lipat dengan In-Memory Caching Redis, Pub/Sub, dan Queue Manager.

Status Membaca:Belum Dibaca

Daftar Bab (1)

Bab 1 dari 1

Struktur Data Redis & Caching Strategy

Redis In-Memory Data Store & Caching

Redis (Remote Dictionary Server) adalah penyimpanan struktur data dalam memori (RAM) yang sangat cepat dengan latensi sub-milidetik.

Kasus Penggunaan Utama Redis

1. Response Caching — Menyimpan hasil query database yang sering diakses.

2. Session Store — Menyimpan data token login user across multiple server.

3. Rate Limiter — Mencegah spam atau DDoS request ke endpoint API.

4. Leaderboard Real-time — Menggunakan struktur data *Sorted Sets* (ZADD, ZREVRANGE).

Contoh Implementasi Redis Caching di Node.js:

import { createClient } from 'redis';

const redis = createClient();
await redis.connect();

async function getMateriDetail(materiSlug) {
  // 1. Cek Cache Redis terlebih dahulu
  const cachedData = await redis.get('materi:' + materiSlug);
  if (cachedData) {
    console.log('⚡ Cache Hit! Mengambil dari Redis RAM');
    return JSON.parse(cachedData);
  }

  // 2. Jika Cache Miss, ambil dari Database SQL/NoSQL
  console.log('🐢 Cache Miss! Query dari Database');
  const dbData = await db.materi.findUnique({ where: { slug: materiSlug } });

  // 3. Simpan ke Redis dengan TTL (Time To Live) 1 Jam (3600 detik)
  await redis.setEx('materi:' + materiSlug, 3600, JSON.stringify(dbData));

  return dbData;
}