Соңғы өңдеу:
Horizontal scaling (жүктеме теңгерімі)
Click to expand / collapse

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-ңіздің кез келген трафик көлемінде жұмыс істеуін қамтамасыз етеміз, жоғары істен шығуға төзімділік, динамикалық масштабтау және тұрақты қолжетімділік.

Танымал тақырыптар


Негізгі тақырыптар