Ishga tayyor · System design asoslari
Daraja: Ilg'or
Talab, trafik, data, bottleneck va trade-offdan arxitektura chiqarish.
Tushuntirish
## Ishdagi vazifa Diagrammani texnologiya nomidan emas, functional va non-functional talabdan boshlash. Foydalanuvchi soni, request rate, data hajmi, latency, availability va consistency taxmin qilinadi. Oddiy modular monolith ko‘p jamoa uchun to‘g‘ri boshlanish; microservice mustaqil deployment foydasi uning network, data consistency va operations narxidan katta bo‘lganda ajratiladi.
## Muhim qarorlar Stateless app horizontal scale qilinadi; DB ko‘pincha birinchi bottleneck. Cache tezlik beradi, ammo invalidation va stale data siyosati talab qiladi. Queue yukni tekislaydi, lekin duplicate va orderingga tayyor consumer kerak. Har qaror uchun alternative, trade-off va failure mode yoziladi.
## Ishga tayyor mezon Nomzod raqamlarsiz `scalable` demaydi va premature murakkablikdan qochadi.
Kod misoli
Traffic: 100k DAU × 20 request / 86400 ≈ 23 rps average
Peak factor 10 => ~230 rps
Write/read ratio: 1:8
SLO: p95 < 300 ms, monthly availability 99.9%
Keng tarqalgan xatolar
- Talab va jamoa hajmini bilmasdan darhol Kafka, Kubernetes va o‘nlab microservice tanlash.
Mashqlar
- URL shortener uchun requirement, API, data model va bottlenecklarni chizing.
- Monolithdan qachon servis ajratishingizni o‘lchanadigan shart bilan yozing.
Teglar: architecture, ishga-tayyor, system-design, career-06