En hjemmeside håndterer tusind brugere. Så en million. Går den ned? Skalerbarhed er et systems evne til at håndtere voksende mængder arbejde. Det kan vokse ved at tilføje ressourcer (horisontal skalering) eller ved at gøre eksisterende ressourcer mere kraftfulde (vertikal skalering). Et skalerbart system går ikke i stykker, når efterspørgslen stiger.
Vertikal skalering er enklere. Tilføj mere RAM, en hurtigere CPU, en større disk. Men der er begrænsninger. Du kan ikke tilføje uendelig RAM. Horisontal skalering er sværere. Tilføj flere maskiner og fordel belastningen. Det kræver load balancers, distribuerede databaser og statsløse tjenester. Men det kan skaleres næsten uden begrænsninger.
Skaleringsstrategier
- Horisontal: tilføj flere servere
- Vertikal: opgrader eksisterende servere
- Load balancing: distribuer trafik
- Caching: Reducer gentaget arbejde
- Sharding: opdel data på tværs af maskiner
Skalerbarhed handler ikke kun om hardware. Det handler om arkitektur. Et dårligt designet system vil ikke skalere, uanset hvor mange servere du bruger. Et veldesignet system kan vokse fra en startup til en global platform. Designbeslutninger truffet tidligt afgør, hvor langt du kan nå.
Comments
No comments yet. Be the first to share a thought.
Leave a comment