Horizontal scaling (жүктеме теңгерімі)

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

Байланысу

Төмендегі форманы толтырыңыз, біз сізге жақын арада жауап береміз.

Электрондық пошта:

info@jackcode.io

support@jackcode.io