Автоскейлинг жана SLA балансы
Автоскейлинг жана SLA балансы
1) Максаттары жана принциптери
Автоскейлингдин максаты - SLO (жашыруун/жеткиликтүүлүк) минималдуу баада сактоо.
SLA, SLO, SLA Cost: Биз "чексиз" масштабда кууп эмес, - бюджеттин каталар жана акча лимиттеринин чегинде.
Ачык жүк модели: келген суроолор интенсивдүүлүк агымын түзөт 'λ'; система орточо параллелизмди камсыз кылышы керек 'N ≈ λ × W' (Little мыйзамы), мында 'W' - орточо тейлөө убактысы.
2) Кандай метриктер триггерлерге ылайыктуу
Техникалык:- CPU/RAM/IO (каныктыруу үчүн прокси).
- Атаандаштык (in-flight) жана pool wait.
- p95/p99 application latency (чыныгы SLO чагылдырат).
- RPS/arrival rate (арыздар ылдамдыгы).
- Кезектер: тереңдик, билдирүүлөрдүн жашы, иштетүү ылдамдыгы.
- Ийгиликтүү транзакциялардын үлүшү ≤ T сек (депозиттер, чек-аут).
- Операцияларды тастыктоо убактысы.
Сунуш: 2-3 сигналдарды айкалыштыруу: мисалы, кызмат үчүн latency + pools жана воркерлер үчүн queue depth + age.
3) Реактивдүү Vs алдын ала скейл
Реактивдүү (feedback): HPA/ASG көбөйөт/репликаларды азайтат. Жөнөкөй, бирок лаг бар.
Алдын ала (feed-forward): календарь/өткөн телеметрия/базар-иш-чаралар. pre-warm камтыйт: чокусуна чейин Δ t үчүн N бийлик жогорулатуу.
Иш жүзүндө: гибрид - baseline (минималдуу), окуялардын алдында алдын ала буст, реактивдүү алып келет.
4) Skale саясаты жана туруктуулук параметрлери
Максаттуу трекинг: максаттуу (мисалы, CPU 60%) жакын метрика сактоо.
Step scaling: ашыкча баскычтар (жип боюнча агрессивдүү).
Stabilization window/cooldown: жылмакай (мисалы, 60-180 сек).
Min/Max: төмөнкү жана жогорку чектери; max - БД/провайдердин лимиттеринин чегинде.
5) Деңгээлдерди координациялоо (архитектуралык каскад)
1. Периметр/API-шлюз - ийкемдүү, бирок чектери жана backpressure менен.
2. Кызматтар - HPA latency/RPS/pool wait.
3. Кезектер/воркерлер - KEDA/ASG билдирүүлөрдүн тереңдиги/жашы боюнча.
4. BD/кэш - кылдат масштабдоо (реплика/шардана), алдын ала.
Эреже: тиркемени "маалыматтар" туруштук бергенден тезирээк көбөйтпөңүз.
6) Кезек жана мыйзам Little (кантип Worker эсептөө керек)
'λ' (msg/s) жана орточо иштетүү убактысы 'W' (s) менен кезек үчүн:- Керектүү параллелизм: 'N _ min ≈ λ × W'.
- чокулары/куйруктары менен: 'N W (1. 2–1. 5)`.