One search. Connected ideas.
Find the lesson, understand the concept, and prepare your answer.
14 results shown · grouped by type
Lessons6
Vertical scaling adds resources to one machine, while horizontal scaling adds machines and distributes requests or data. Horizontal scaling improves capacity only if work can be shared without losing correct state coordination. Stateless request handlers are easier to spread, but databases, sessions and background work may still need special handling.
CAP describes a limit on distributed systems during a network partition. If nodes cannot communicate, the system cannot guarantee both a single up-to-date view of data and a successful response to every request to non-failing nodes. It must sometimes sacrifice availability or allow responses that may not satisfy that consistency guarantee.
Caches, CDNs, replicas and shards address different kinds of repeated work or load. A cache reuses a result, a CDN brings cacheable content closer to users, a replica copies data, and a shard owns a subset of data. Combining them requires freshness, routing and recovery rules rather than simply adding more boxes.
Cache-aside means the application manages when values enter and leave the cache. It first looks in the cache, loads missing data from the source of truth, then stores that result for later readers. This reduces repeated database work but creates a separate copy whose freshness must be controlled.
Eventual consistency allows copies or derived views to differ temporarily while updates propagate. If no new changes occur and processing succeeds, those views converge. This is useful when a delay is acceptable, but the product must define what users see during that delay and how failed propagation is repaired.
A monolith is deployed as one application, a modular monolith keeps clear internal feature boundaries within that deployment, and microservices are independently deployable services. These choices affect how teams change code, scale workloads and handle failure. Microservices reduce some coupling but introduce network calls, distributed data and operational coordination.
Interview questions6
Vertical scaling adds resources to one machine, while horizontal scaling adds machines and distributes requests or data. Horizontal scaling improves capacity only if work can be shared without losing correct state coordination. Stateless request handlers are easier to spread, but databases, sessions and background work may still need special handling.
CAP describes a limit on distributed systems during a network partition. If nodes cannot communicate, the system cannot guarantee both a single up-to-date view of data and a successful response to every request to non-failing nodes. It must sometimes sacrifice availability or allow responses that may not satisfy that consistency guarantee.
Caches, CDNs, replicas and shards address different kinds of repeated work or load. A cache reuses a result, a CDN brings cacheable content closer to users, a replica copies data, and a shard owns a subset of data. Combining them requires freshness, routing and recovery rules rather than simply adding more boxes.
Cache-aside means the application manages when values enter and leave the cache. It first looks in the cache, loads missing data from the source of truth, then stores that result for later readers. This reduces repeated database work but creates a separate copy whose freshness must be controlled.
Eventual consistency allows copies or derived views to differ temporarily while updates propagate. If no new changes occur and processing succeeds, those views converge. This is useful when a delay is acceptable, but the product must define what users see during that delay and how failed propagation is repaired.
A monolith is deployed as one application, a modular monolith keeps clear internal feature boundaries within that deployment, and microservices are independently deployable services. These choices affect how teams change code, scale workloads and handle failure. Microservices reduce some coupling but introduce network calls, distributed data and operational coordination.
Modules2
System design learning module
System design learning module