Kurs
System Design
Kattalashganda buzilmaydigan tizimlarni qanday loyihalash — asoslardan amaliyotgacha.
Tizimlar negizi
- 01 System Design nima? System Design nima, nega kerak va qanday yondashish kerakligi haqida.
- 02 Scalability asoslari Vertical va horizontal scaling, qachon qaysi biri kerak va qanday qo'llash kerak.
- 03 Kompyuter va tarmoq asoslari Kompyuter arxitekturasi, tarmoq qatlamlari va client-server modeli.
- 04 Internet protokollari (HTTP, DNS) HTTP, HTTPS, DNS va internet qanday ishlashi haqida.
Kengayish usullari
- 05 Load Balancing Trafikni serverlar orasida taqsimlash, algoritmlar va strategiyalar.
- 06 Vertical vs Horizontal Scaling Vertical va horizontal scaling strategiyalari va qachon qaysi birini tanlash.
- 07 Stateful vs Stateless arxitektura Stateful va stateless tizimlar farqi, horizontal scaling uchun stateless qilish.
- 08 CDN (Content Delivery Network) CDN nima, qanday ishlaydi va static contentni global tezlikda yetkazish.
- 09 Reverse Proxy va API Gateway Reverse proxy va API Gateway farqi, qanday ishlaydi va nima uchun kerak.
Ma'lumotlar ombori
- 10 ACID xususiyatlari ACID (Atomicity, Consistency, Isolation, Durability) - database transaction'larning asosiy xususiyatlari.
- 11 SQL vs NoSQL SQL va NoSQL database'larning farqi, qachon qaysi birini tanlash kerak.
- 12 Database Indexes Index nima, qanday ishlaydi va querylarni qanday tezlashtiradi.
- 13 Database Replication Master-slave va master-master replication, high availability va read scaling.
- 14 Database Sharding Horizontal partitioning, sharding strategiyalari va cross-shard challenges.
- 15 CAP teoremasi Consistency, Availability, Partition Tolerance - distributed systemlarda tanlov qilish.
Keshlash
- 16 Caching asoslari Cache nima, qanday ishlaydi, cache hit/miss va asosiy strategiyalar.
- 17 Cache invalidation strategiyalari E-tag, TTL, Jitter va cache consistency ta'minlash usullari.
- 18 Distributed Cache (Redis, Memcached) Redis va Memcached - distributed cache, clustering va high availability.
- 19 Eventual Consistency Eventual consistency, conflict resolution va distributed systems'da ma'lumot uyg'unligi.
Asinxron jarayonlar
- 20 Message Queues asoslari Message queue nima, producer-consumer pattern va asynchronous processing.
- 21 Publish-Subscribe pattern Pub/Sub pattern, event broadcasting va real-time notifications.
- 22 Event-Driven Architecture Event-driven tizimlar, loose coupling va reactive systems.
- 23 Microservices vs Monolith Monolith va microservices arxitekturalari, qachon qaysi birini tanlash.
Qo'shimcha mavzular
- 24 Rate Limiting va Throttling Rate limiting algoritmlari, DDoS protection va API quota management.
- 25 Monitoring va Observability Metrics, logs, tracing va system health monitoring.
- 26 Security asoslari Authentication, authorization, encryption va common vulnerabilities.
- 27 Disaster Recovery va High Availability Backup strategies, failover, RTO/RPO va business continuity.
Real-world Case Studies
- 28 System Design Interview'ga tayyorgarlik Interview qanday o'tadi, qanday yondashish kerak va maslahatlar.
- 29 Case Study: URL Shortener Bit.ly kabi URL shortener tizimini loyihalash - to'liq case study.
- 30 Case Study: Twitter Twitter kabi social network tizimini loyihalash.
- 31 Case Study: WhatsApp WhatsApp kabi real-time messaging tizimini loyihalash.
- 32 Case Study: Uber Uber kabi location-based ride-hailing tizimini loyihalash.