API өнімнің негізіне айналғанда және секундына он мыңдаған сұрауларды өңдей бастағанда, оның көлденең масштабын қамтамасыз ету өте маңызды. Бұл сервисті тоқтатпай жаңа инстанциялар қосуды және теңгерімдеушілердің көмегімен олардың арасында жүктемені бөлуді білдіреді.
Біз икемді өсуге және кез келген жүктемені көтеруге қабілетті масштабталған API архитектурасын жобалаймыз және енгіземіз.
horizontal scaling қалай жұмыс істейді
| Компонент | Не істеп жатыр |
|---|---|
| Load balancer | Кіріс трафигін API серверлер арасында бөледі (HAProxy, Nginx, AWS ELB) |
| API-инстанциялар | Параллельді сұрауларды өңдейтін API қосымшаларының тәуелсіз көшірмелері |
| Жалпы деректер қоймасы | Барлық инстанциялар үшін қолжетімді орталықтандырылған ДБ немесе кэш |
| Health-check и auto-recovery | Инстанциялардың қол жетімділігін бақылау және автоматты түрде қалпына келтіру |
Бұл не үшін қажет
Сұраныстардың күрт өсуі кезіндегі тұрақтылық- Істен шығуға төзімділік - бір тораптың істен шығуы API жұмысына әсер етпейді
- Бағдарлама логикасындағы өзгерістерсіз «кеңейту» масштабын қолдау
- Жаңартуларды кезең-кезеңімен шығару мүмкіндігі (rolling update)
- Динамикалық масштабтау арқылы шығындарды оңтайландыру
Біз не қолданамыз
Load balancers: HAProxy, Nginx, AWS ELB, GCP Load Balancer
Оркестраторлар: Docker Swarm, Kubernetes, ECS
Кеш и shared state: Redis, Memcached, S3
Мониторинг: Prometheus, Grafana, Datadog
CI/CD: Жүктеме бойынша жаңа инстанцияларды автоматты түрде сақтау
Қайда сыни
Қаржылық және банктік API- Реалтайм ойындары және стримингтік сервистер
- E-commerce сату және ең жоғары жүктемелер кезінде
- Жаһандық қамту және GEO-бөлу өнімдері
Horizontal scaling - өсудің архитектуралық іргетасы. Біз сіздің API-ңіздің кез келген трафик көлемінде жұмыс істеуін қамтамасыз етеміз, жоғары істен шығуға төзімділік, динамикалық масштабтау және тұрақты қолжетімділік.
Байланысу
Төмендегі форманы толтырыңыз, біз сізге жақын арада жауап береміз.