System design (thiết kế hệ thống) là quá trình định nghĩa kiến trúc, các thành phần và tương tác của một hệ thống phần mềm để đáp ứng yêu cầu — đặc biệt là về scalability, reliability và performance. Nó nói về cách các mảnh ghép kết hợp với nhau để xây dựng những hệ thống hoạt động được ở quy mô lớn.
System design bao gồm những gì
System design = cấu trúc tổng thể (high-level) của một hệ thống:
→ COMPONENTS → services, databases, caches, queues, load balancers, v.v.
→ cách chúng TƯƠNG TÁC → luồng dữ liệu, giao tiếp, APIs
→ đáp ứng YÊU CẦU → functional (làm gì) + non-functional (scale, tốc độ,
reliability, availability)
→ nói về BỨC TRANH TỔNG THỂ / kiến trúc, không phải từng đoạn code riêng lẻ
