API məhsulun əsasına çevrildikdə və saniyədə on minlərlə sorğu emal etməyə başladıqda, üfüqi miqyasını təmin etmək vacibdir. Bu, xidməti dayandırmadan yeni instansiyaların əlavə edilməsi və balanslaşdırıcıların köməyi ilə yükün onlar arasında bölüşdürülməsi deməkdir.
Biz asanlıqla böyüyə bilən və hər hansı bir pik yükə tab gətirə bilən API ölçülü arxitekturanı layihələndiririk və tətbiq edirik.
Horizontal scaling necə işləyir
| Komponent | Nə edir |
|---|---|
| Load balancer | API serverləri arasında gələn trafiki paylayır (HAProxy, Nginx, AWS ELB) |
| API instansiyalar | API tətbiqetmələrinin müstəqil surətləri, paralel sorğu emalı |
| Ümumi məlumat saxlama | Bütün orqanlar üçün mövcud olan mərkəzləşdirilmiş DB və ya cache |
| Health-check и auto-recovery | Instansiyaların əlçatanlığına nəzarət və avtomatik bərpa |
Niyə lazımdır
Tələblərin kəskin artması ilə sabitlik
Uğursuzluq - bir qovşağın uğursuzluğu API-nin işinə təsir etmir
Tətbiqin məntiqində dəyişiklik etmədən «genişləyin» miqyasını dəstəkləyir
Yeniləmələri mərhələli şəkildə çıxartmaq imkanı (rolling update)
Dinamik miqyasla xərclərin optimallaşdırılması
Nə istifadə edirik
Load balancers: HAProxy, Nginx, AWS ELB, GCP Load Balancer
Orkestratorlar: Docker Swarm, Kubernetes, ECS
Кеш и shared state: Redis, Memcached, S3
Monitorinq: Prometheus, Grafana, Datadog
CI/CD: Yük üzrə yeni instansiyaların avtomatik deplosu
Harada kritik
Maliyyə və Bank API
Realtaym oyunları və axın xidmətləri
Satış və pik yüklərdə E-ticarət
Qlobal əhatə və GEO paylanması ilə məhsullar
Horizontal scaling böyümə üçün memarlıq təməlidir. API-lərinizi istənilən trafik həcmində, yüksək nasazlıq, dinamik ölçmə və daimi mövcudluğu ilə təmin edəcəyik.