0
0
HLDsystem_design~12 mins

What high level design encompasses in HLD - Architecture Diagram

Choose your learning style9 modes available
System Overview - What high level design encompasses

High Level Design (HLD) describes the overall structure of a system. It shows how major parts connect and work together to meet key requirements like scalability, reliability, and performance.

HLD focuses on components, their relationships, and data flow without going into detailed code or algorithms.

Architecture Diagram
User
  |
  v
Load Balancer
  |
  v
API Gateway
  |
  v
+-------------------+
|   Service Layer    |
|  (Multiple Services)|
+-------------------+
  |
  v
Database Cluster <-> Cache Layer
  |
  v
Message Queue (for async tasks)
Components
User
actor
End user who interacts with the system
Load Balancer
load_balancer
Distributes incoming requests evenly to prevent overload
API Gateway
api_gateway
Handles client requests, routing, authentication, and throttling
Service Layer
service
Contains core business logic split into multiple services
Database Cluster
database
Stores persistent data with replication for reliability
Cache Layer
cache
Speeds up data access by storing frequently used data
Message Queue
queue
Handles asynchronous tasks and communication between services
Request Flow - 11 Hops
UserLoad Balancer
Load BalancerAPI Gateway
API GatewayService Layer
Service LayerCache Layer
Cache LayerService Layer
Service LayerDatabase Cluster
Database ClusterService Layer
Service LayerCache Layer
Service LayerAPI Gateway
API GatewayLoad Balancer
Load BalancerUser
Failure Scenario
Component Fails:Database Cluster
Impact:New writes fail and fresh data cannot be retrieved; cache may serve stale data
Mitigation:Use database replication and failover to standby nodes; cache continues serving reads; alert system triggers for manual intervention
Architecture Quiz - 3 Questions
Test your understanding
Which component is responsible for distributing incoming user requests evenly?
ACache Layer
BAPI Gateway
CLoad Balancer
DMessage Queue
Design Principle
High Level Design focuses on defining major system components and their interactions to ensure scalability, reliability, and maintainability without diving into low-level implementation details.