scalabilitate și elasticitate
Ce este scalarea automată în SaaS?
Ce este scalarea automată?
Scalarea automată este o caracteristică care ajustează resursele unei aplicații SaaS în sus sau în jos în funcție de utilizarea curentă. Când sunt mai mulți utilizatori, scalarea automată crește resursele disponibile - pe de altă parte, le reduce în perioadele de liniște. Horizontal Pod Autoscaler din Kubernetes, de exemplu, verifică utilizarea la fiecare 15 secunde în mod implicit.
Cum funcționează autoscalarea SaaS?
Companiile SaaS au nevoie de auto-scaling deoarece adesea nu știu când traficul crește sau scade. Deși uneori este previzibil (de exemplu,, o lansare de produs), evenimentele globale bruște și vârfurile neșteptate sunt situațiile în care ar trebui implementat auto-scaling.
Care sunt beneficiile cheie ale scalării automate pentru afacerile SaaS și clienții lor?
Motivele Pentru a pentru a utiliza auto-scaling în afacerea dumneavoastră SaaS includ:
- Performanță: Utilizați scalarea automată, astfel încât site-ul sau aplicația dvs. să funcționeze optim în perioadele aglomerate; fără aceasta, ați putea întâmpina întreruperi ale serviciului.
- Disponibilitate: Auto-scaling susține accesibilitatea site-urilor, produselor și serviciilor pe măsură ce cererea fluctuează, în timp ce un load balancer gestionează distribuția traficului între serverele scalate automat.
- Optimizarea costurilor: Utilizați scalarea automată pentru a scala în sus și în jos în funcție de utilizarea în timp real – riscați cheltuieli inutile dacă utilizați o metodă alternativă.
Ce valori sunt utilizate în mod obișnuit pentru a declanșa evenimente de scalare automată?
Auto-scaling este declanșat de metrici de performanță în cloud, verificați la intervale (implicit la fiecare 15 secunde în Kubernetes), cum ar fi:
- Utilizarea CPU: Cantitatea de CPU utilizată la un moment dat.
- Utilizarea memoriei: Câtă memorie utilizează o aplicație sau un site web în timp real.
- Trafic de rețea: Datele primite și trimise prin rețea.
- Latența solicitării: Timpii de răspuns la solicitările utilizatorilor; aceasta depinde parțial de câți utilizatori se află pe același server.
- Lungimea cozii: Solicitări de coadă în așteptare; scalarea automată este declanșată când aceasta este mai mare.
Care sunt diferitele tipuri de politici de scalare automată și când le-ați folosi pe fiecare?
Diferite politici de scalare automată funcționează în scenarii variate. Iată o listă cu câteva dintre cele mai comune și când ar trebui să le utilizați:
- Urmărirea țintei: Mută resursele pe baza unei metrici precum lungimea medie a cozii; AWS o recomandă cu tărie pentru EC2 Auto Scaling (AWS).
- Scalare în trepte: Scalează în limitele unor praguri stabilite de dumneavoastră, în pași dimensionați în funcție de depășire; se utilizează atunci când target tracking nu este suficient.
- Scalare programată: Scalare bazată pe ore programate; utilizați dacă știți modelele de trafic zilnice sau săptămânale.
| Tip de Politică | Caracteristici Cheie | Cele mai Bune Cazuri de Utilizare |
|
Abordare de scalare |
||
| Urmărirea Țintei | Ajustează resursele pe baza unor valori specifice, cum ar fi lungimea medie a cozilor | Majoritatea cazurilor, conform ghidului AWS pentru EC2 Auto Scaling |
| Scalare Treptată | Scalează resursele în limite predefinite stabilite de utilizator | Când target tracking nu este suficient |
| Scalare Programată | Scalează resursele la momente predeterminate | Când tiparele de trafic zilnic sau săptămânal sunt consecvente |
|
Considerații privind Scalabilitatea |
||
| Flexibilitate | Urmărirea Țintei: Cea mai adaptabilă | Scalare Programată: Cea mai puțin flexibilă |
Care sunt câteva exemple din lumea reală a afacerilor SaaS care utilizează cu succes scalarea automată pentru a satisface cererea fluctuantă?
Exemple de companii SaaS care utilizează scalarea automată în funcție de cerere sunt:
- Shopify: Rulează microservicii pe Google Kubernetes Engine, despre care Google afirmă că se scalează în timpul vârfurilor de trafic, cum ar fi de Black Friday (Google Cloud).
- Slack: Își scalează automat nivelul aplicației web rapid atunci când workerii devin saturați (Slack Engineering, 2020).
- Netflix: Parametrii de auto-scaling sunt setați pentru a gestiona traficul atunci când mai mulți spectatori sunt online (de exemplu,., seara, ca un brevetul Netflix privind scalarea predictivă depus în 2013 descrie).
Concluzie
Companiile SaaS ar trebui să utilizeze auto-scalarea pentru a gestiona resursele în timpul activității ridicate și scăzute. Amazon Web Services, Pepperdata și Google Cloud sunt trei instrumente cu auto-scalare. Luați în considerare dacă aveți nevoie de urmărirea țintei, scalarea pas cu pas sau scalarea programată.