System Design for High-Traffic URL Shortener
Case study designing URL shortener: estimating scale, generating unique short codes, multi-layer caching, handling alias conflicts, data consistency, and traffic spikes.
Design patterns, system design, microservices and the building blocks of large systems.
Case study designing URL shortener: estimating scale, generating unique short codes, multi-layer caching, handling alias conflicts, data consistency, and traffic spikes.
Case study designing autocomplete for an e-commerce marketplace. Requirements, data model, API, Redis top-K by prefix, Kafka, hot key handling, and traffic spikes.
How rebalancing works, why it stops consumers, and ways to minimize it through poll configuration, cooperative rebalancing, and static membership.
Case study in designing an airline booking system. Time-bound seat hold, idempotent payments, preventing duplicate seat sales with conditional updates, and handling traffic spikes during flash sales.
How Kafka selects partitions from keys, how to choose keys to maintain correct message order without creating hot partitions, and common mistakes with Spring Boot.
Case study of hotel booking system design: per-night inventory model, limited-time holds, overbooking prevention via SQL, and handling traffic spikes.
Configure blocking and non-blocking retry for Kafka consumer in Spring Boot 3, push error messages to dead letter topic, and write tests to verify behavior.
Case study in designing a movie ticket booking system: temporary seat holds using conditional UPDATE, fast locking with Redis, automatic seat release on expiration, and surge protection.
Hold seats temporarily in a ticketing system using Redis SET NX PX: atomic locking, auto-expiry, safe release with Lua, with Spring Boot 3 examples and tests.
Use Redis Geo (GEOADD, GEOSEARCH) and Spring Data Redis to store coordinates, find nearby stores, and calculate distances.
Use Redis sorted set with Spring Boot 3 to build leaderboards, priority/delay queues and sliding window rate limiters. Includes working code and tests.
Distinguish between Factory Method and Abstract Factory with concrete examples, including runnable Java code and JUnit 5 tests to see clearly when to use which pattern.
Distinguish Observer pattern and Pub/Sub through coupling, sync/async, and concrete Java examples to choose the right model.
Comparing REST, gRPC, and message queues in microservices architecture, with concrete Java examples to help you choose the right tool for the right problem.
Learn how acks, retries, and idempotence work together to ensure messages are not lost or duplicated when a producer sends data to Kafka.
Compare Redis Pub/Sub and Redis Streams, with specific Java code examples to help you choose the right messaging model for your system.
A guide to reading EXPLAIN ANALYZE output in PostgreSQL, understanding Seq Scan, Index Scan, cost, actual time, and how to detect slow queries.
Load Balancer does more than just distribute load. This article explains 7 real-world functions with nginx, Spring Boot, and Kubernetes examples.
Learn how Databricks uses AI to diagnose database errors, applied to PostgreSQL with Spring Boot, HikariCP examples and specific slow query cases.
A comprehensive guide to core API concepts: HTTP, REST/GraphQL/gRPC, versioning, security, reliability, documentation — with practical Java/Spring Boot examples.