Inleiding
Nu we hebben geleerd hoe een clouddatacenter werkt, denkt u misschien dat alle complexiteit wordt afgehandeld door de cloudserviceproviders (CSP's) en dat het bouwen van een cloudtoepassing heel eenvoudig is. Om optimaal gebruik te maken van de mogelijkheden van de cloud, moeten ontwikkelaars echter een aantal best practices volgen bij het ontwerpen en implementeren van hun toepassingen.
In deze module kijken we hoe toepassingen moeten worden geïmplementeerd in de cloud om fouttolerantie te garanderen en goede prestaties te halen. De wereldwijde aanwezigheid van clouddatacenters vereenvoudigt het proces van het bereiken van een groot aantal eindgebruikers, maar implementatiepatronen moeten ook zijn afgestemd voor de ondersteuning van eenvoudig schalen en fouttolerantie.
Een cloudtoepassing moet voordelig zijn, bereikbaar zijn met lage latentie en ondersteuning bieden voor een groot aantal gelijktijdige gebruikers (hoge doorvoer), zonder afname van services (fouttolerantie en elasticiteit). Ondanks de hulpprogramma's die CSP's bieden, vereist het bouwen van een dergelijke toepassing veel planning.
In een latere module kijken we naar enkele algemene patronen rondom taakverdeling en schalen, en ook hoe robuuste toepassingen moeten worden gebouwd.
Ten slotte besteden we aandacht aan enkele veelvoorkomende problemen met responsieve, interactieve toepassingen die gebruikmaken van een groot cluster van resources voor cloud-computing, en bespreken we enkele oplossingen.
Leerdoelen
In deze module wordt het volgende behandeld:
- Verschillende overwegingen evalueren voor het programmeren van toepassingen die in clouds worden uitgevoerd.
- Verschillende overwegingen evalueren voor het implementeren van toepassingen in clouds.
- Proactieve en reactieve maatregelen vergelijken voor fouttolerantie in cloudtoepassingen.
- De prioriteit van taakverdeling in cloudtoepassingen beschrijven en verschillende methoden opnoemen om taakverdeling te bereiken.
- De strategieën en overwegingen opnoemen voor het schalen van cloudtoepassingen.
- Beschrijven waarom het minimaliseren van tail-latentie belangrijk is en de verschillende strategieën bespreken om tail-latentie te verminderen.
- De strategieën beschrijven voor het optimaliseren van de totale operationele kosten van het gebruik van cloudservices.
Vereisten
- Kennis van cloud-computing, inclusief cloudservicemodellen en gangbare cloudproviders.
- Kennis van de technologieën die cloud-computing mogelijk maken.
- Kennis van de manier waarop cloudserviceproviders betalen voor cloudgebruik en dit doorberekenen.
- Kennis van datacenters en waarom deze nodig zijn.
- Kennis van opzet, stroomvoorziening en inrichting van datacentra.
- Kennis van het inrichten en meten van cloudresources.