Ben je aan het nadenken over hoe je je cloudomgeving beter kunt inrichten en tegelijkertijd kosten kunt besparen? Performancetesten kunnen hierbij een grote rol spelen. Deze tests helpen je niet alleen om te kijken of je systemen de verwachte workload aankunnen, maar bieden ook inzicht in hoe je je cloudomgeving zo efficiënt mogelijk kunt maken. Hieronder leggen we op een begrijpelijke manier uit hoe je dit kunt aanpakken.
1. Denk goed na over het ontwerp van je applicatie
Heb je echt een virtuele machine (VM) nodig, of kun je beter kiezen voor een serverless-oplossing? Zowel Microsoft Azure als Amazon Web Services bieden bijvoorbeeld serverless opties die goedkoper kunnen zijn. Een voorbeeld hiervan is een API die data leest of wegschrijft van of naar een database of een eenvoudige opslag waar je geen onderhoud aan wil hebben. Je betaalt alleen voor het daadwerkelijke gebruik en als er geen load is, zijn de kosten extreem laag. Heel voordelig dus.
2. Kies de juiste virtuele machine
Cloudproviders hebben verschillende soorten virtuele machines, afhankelijk van het type workload dat je nodig hebt.
- Leunt je applicatie zwaar op CPU-gebruik? Kies dan een machine die daarvoor geoptimaliseerd is. Het voordeel is dat deze machines de modernste CPU-generaties hebben, pure rekensnelheid gegarandeerd, uiteraard wel tegen een bijbehorend kostenplaatje. De nadruk ligt dan wellicht wat minder op andere zaken, denk bijvoorbeeld aan schijf- of netwerksnelheid en geheugengrootte.
- Heb je korte, drukke momenten? Dan wil je natuurlijk dat de performance nog steeds dik in orde is. Hier bieden ‘burstable’ types een oplossing. Je kan dan boven de gedefinieerde capaciteit van het type werken, dit kost natuurlijk wel extra.
- Verwerkt je applicatie lokaal veel data? Ga dan voor een opslag geoptimaliseerd type. Dit soort types hebben de meest snelle en eventueel grote SSD-oplossingen om de data zo snel mogelijk te lezen en/of weg te schrijven.
- Werk je veel met AI-gerelateerde toepassingen, zoals ChatGPT, grafische toepassingen of andere modellen waarbij neurale netwerken getraind moeten worden? Ook daar zijn speciale VM’s voor met specifieke GPU-hardware.
- En als je applicatie geen specifieke eisen heeft, zijn de algemene, goedkopere machines vaak prima. Laat je dus niet zomaar verleiden om voor de geavanceerde (duurdere) types te kiezen.
- Last but not least: ‘spot’ virtuele machines. Spot VM is niet afgeleid van spotgoedkoop, maar doordat de marktprijs bepaald wordt door de vraag en aanbod van overcapaciteit zijn de VM’s vaak scherp geprijsd. Hier kleven wel wat nadelen aan. Spot VM’s zijn niet gegarandeerd voor jou beschikbaar en de cloudprovider kan op korte termijn beslissen dat het de capaciteit (of een deel daarvan) nodig heeft voor klanten die er meer voor betalen. Hangen er geen heftige performance-eisen aan jouw workload? Bijvoorbeeld bij een automatische nachtelijke verwerking in de administratie, dan maakt het wellicht niet zoveel uit of dit binnen 1 uur of 4 uur klaar is. In zo’n geval kan het zeker de moeite waard zijn om je hier eens in te verdiepen.
3. High Available: wel of niet nodig?
Als je de applicatie ‘hoog beschikbaar’ maakt, betekent dit dat je deze over meerdere zogenaamde availability zones beschikbaar moet maken. Heeft een locatie van de cloudprovider een technisch probleem? Dan heeft jouw dienstverlening hier niet tot nauwelijks last van. Dit kan alleen door op meerdere plekken virtuele machines en andere diensten te laten draaien en een load balancer te gebruiken om dit in goede banen te leiden. Dit brengt uiteraard extra kosten met zich mee. Denk er dus bewust over na of dit echt noodzakelijk is voor jouw situatie.
4. Configureer automatisch opschalen
Eén van de voordelen van de cloud is dat je snel extra capaciteit kunt toevoegen als dat nodig is. Maar let op, machines extra laten draaien kost geld. Stel daarom het automatisch schalen zo in dat het past bij het loadprofiel van je applicatie. Zijn er korte pieken in belasting? Zorg dan dat je snel kunt reageren en de juiste regels instelt om de pieken aan te kunnen. Is het minder belangrijk dat de applicatie altijd zo snel mogelijk klaar is met werk? Beperk dan het automatisch opschalen om kosten te besparen.
Performancetesten als basis voor optimalisatie
Veel van deze besparingsmogelijkheden kun je ontdekken door realistische performancetesten uit te voeren. Deze tests laten vaak zien dat je cloudomgeving efficiënter kan worden ingericht, bijvoorbeeld door minder of goedkopere machines te gebruiken. Ze helpen ook bij het identificeren van problemen met opschalen.
Performancetesten, zoals een Stresstest of Loadtest kunnen je helpen om zowel de performance van je cloudomgeving te verbeteren als om kosten te besparen. Wil je meer weten over hoe je dit kunt doen? Neem dan contact op via performance@computest.nl met onze specialisten voor advies en een uitgebreide beoordeling van jouw cloudomgeving.