------

initializing

← Back to Projects
LIVE

GoShort

Redis Cache Look-Aside Architecture
Redis Cache Look-Aside Architecture

The Problem

URL shorteners are fundamentally read-heavy applications. A single generated link might be clicked millions of times if it goes viral on social media. Querying a traditional SQL database on disk for every single redirect creates a massive I/O bottleneck that can quickly crash the entire infrastructure. If the database goes down, all redirected links instantly break. Maintaining extreme read-throughput while permanently storing the link mapping requires a dual-database approach.

The Solution

I engineered a specialized microservice entirely in Go to handle viral traffic spikes gracefully via an intelligent dual-database architecture. • Look-Aside Redis Caching: Routes 99% of read traffic through high-speed memory, instantly redirecting users and completely bypassing disk reads. • PostgreSQL Persistence: Serves as the ultimate source of truth, only queried during a cache miss to permanently protect against DB crashes. • O(1) Base62 Encoding: Mathematically converts auto-incremented PostgreSQL IDs into 6-character strings, instantly generating short-links without expensive collision-checking loops. This guarantees lightning-fast HTTP 302 redirects while permanently securing the underlying data infrastructure.

Redis Cache Look-Aside Architecture
Redis Cache Look-Aside Architecture

Caching & Redirect Flow

Instant O(1) retrieval via Redis cacheAutomatic cache population on cache missPersistent long-term storage via PostgreSQLCustom Base62 encoding algorithmLightning-fast HTTP 302 Redirections