Delen via


Architectuurstrategieën voor het selecteren van de juiste services

Is van toepassing op deze aanbeveling voor de controlelijst prestatie-efficiëntie van Azure Well-Architected Framework:

PE:03 Selecteer de juiste services. De services, infrastructuur en laagselecties moeten uw mogelijkheid ondersteunen om de prestatiedoelen van de workload te bereiken en rekening te houden met verwachte capaciteitswijzigingen. De selecties moeten ook de voordelen wegen van het gebruik van platformfuncties of het bouwen van een aangepaste implementatie.

In deze handleiding worden de aanbevelingen beschreven voor het selecteren van de juiste services voor uw workload. Met de volgende aanbevelingen kunt u services kiezen die het beste voldoen aan de vereisten en vereisten van uw workload. Wanneer u services gebruikt die zijn ontworpen om de vereisten van uw workload af te handelen, kunt u ervoor zorgen dat uw workload voldoet aan uw prestatiedoelen. Als u ongepaste services voor uw workload kiest, kunnen de services mogelijk niet de vereisten van uw workload verwerken. Onvoldoende services kunnen leiden tot trage reactietijden, knelpunten of workloadfouten.

Definities

Termijn Definition
beschikbaarheidszone Een gescheiden groep datacenters binnen een regio. Elke beschikbaarheidszone is onafhankelijk van de andere, met een eigen energie-, koelings- en netwerkinfrastructuur. Veel regio's ondersteunen beschikbaarheidszones.
Compute-service Een service die de infrastructuur biedt die u nodig hebt om een toepassing uit te voeren.
Databaseservice Een service die relationele en niet-relationele databases voor uw toepassing biedt.
Infrastructuur De fysieke onderdelen van cloud-computing en de geografische locatie van de onderdelen.
Infrastructure as a Service (IaaS) Een service waarin de klant verantwoordelijk is voor het besturingssysteem, de identiteit, toepassingen en netwerken.
Platform as a Service (PaaS) Een service waarin de cloudserviceprovider verantwoordelijk is voor het besturingssysteem. De cloudserviceprovider deelt de verantwoordelijkheid met de klant voor het beheren van identiteit, toepassingen en netwerken.
Regio Een geografische perimeter die een set datacenters bevat.
Hulpbron Eén entiteit of onderdeel dat u binnen een cloudserviceprovider kunt maken, configureren en gebruiken.
Dienst Een product of aanbieding van een cloudserviceprovider.
Voorraadbeheereenheid (SKU) Een servicelaag voor een Azure-service.
Opslagservice Een service die opslag biedt voor objecten, blokken en bestanden.

De services die u kiest, moeten overeenkomen met de prestatiedoelen van uw workload en kunnen worden aangepast aan toekomstige capaciteitsbehoeften. Naarmate de workload uitbreidt of zich ontwikkelt, moeten de services die u gebruikt, voldoen aan uw prestatiestandaarden zonder dat er grote aanpassingen nodig zijn. Houd rekening met de balans tussen platformfuncties en aangepaste implementaties. Platformfuncties bieden directe oplossingen, maar aangepaste opties bieden nauwkeurige afstemming. Uw serviceselecties moeten zowel vooruitdenkend zijn als afgestemd op uw specifieke behoeften, rekening houdend met de afwegingen tussen gemak en aanpassing.

Inzicht in workloadvereisten

Inzicht in workloadvereisten verwijst naar het begrijpen van de technische en functionele vereisten van een workload. Deze analyse helpt bij het bepalen van de resources, opslag, berekening, netwerk en andere specificaties die nodig zijn om de workload uit te voeren. Het afstemmen van services met de specifieke behoeften van een workload helpt bij het voorkomen van overprovisioning of het onderbenutten van resources.

Evalueer de behoeften en kenmerken van uw workload om de vereisten te bepalen en stem uw workloadvereisten af op uw prestatiedoelen op elke laag. U moet rekening houden met beperkingen of afhankelijkheden. Wanneer u inzicht hebt in uw workloadvereisten, kunt u weloverwogen beslissingen nemen. U kunt de juiste infrastructuur bepalen en strategieën implementeren om piekbelastingen of variaties in de vraag af te handelen.

  • Voldoen aan prestatiedoelen. Selecteer services waarmee u aan de prestatiedoelen voor uw workload kunt voldoen. Zorg ervoor dat een service ondersteuning biedt voor de prestatiebehoeften en dat u de prestaties ervan kunt bewaken. Prestatiegegevens verzamelen voor kritieke onderdelen.

  • Overweeg organisatiebeperkingen. Wees bekend met beperkingen die uw organisatie mogelijk heeft voor services die u implementeert. Houd rekening met deze beperkingen wanneer u uw oplossing ontwerpt.

  • Houd rekening met nalevings- en beveiligingsvereisten. Nalevings- en beveiligingsvereisten kunnen van invloed zijn op services en configuraties die u selecteert. Zorg ervoor dat een service die u kiest voldoet aan de vereisten die betrekking hebben op opslag, versleuteling, toegangsbeheer, auditlogboeken en gegevenslocaties.

  • Denk aan teamvaardigheden. Uw team bouwt en onderhoudt workloads. Voor verschillende services zijn verschillende vaardigheden vereist. Kies services die uw team moet gebruiken of voer een training uit voordat u een service kiest. Zorg ervoor dat teamleden beschikken over de expertise en kennis om services effectief te gebruiken en hun prestaties te optimaliseren.

Compromis: Gespecialiseerde services bieden specifieke functionaliteiten, maar kunnen aanpassingen beperken. Flexibele resources vereisen meer beheer en configuratie in vergelijking met gespecialiseerde services. Beheerde services bieden eenvoudig beheer, maar u hebt mogelijk minder controle over de onderliggende infrastructuur in vergelijking met zelfbeheerde resources.

Inzicht in services

Inzicht in services is het kennen van de mogelijkheden, limieten en functionaliteiten van de hulpprogramma's en aanbiedingen van een leverancier. Een goed begrip van services helpt u bij het gebruik van ingebouwde functies, waardoor u minder complexe aangepaste oplossingen nodig hebt en de efficiëntie van de prestaties verbetert.

Houd rekening met verschillende factoren en krijg een uitgebreid inzicht in een service voordat u deze kiest. Services en hulpprogramma's onderzoeken en beoordelen die de provider aanbiedt. Bepaal welke services en hulpprogramma's het beste aansluiten bij uw workloadvereisten. Overweeg factoren zoals beheerde services, serverloze opties en gespecialiseerde services.

Meer informatie over servicelimieten

Servicelimieten zijn de vooraf gedefinieerde drempelwaarden of grenzen die serviceproviders hebben ingesteld. Servicelimieten definiëren het maximale gebruik van resources of mogelijkheden binnen die service. Wanneer u bekend bent met servicelimieten, kunt u problemen voorkomen, zoals resourceconflicten, prestatievermindering of onverwachte serviceonderbrekingen. U kunt de infrastructuur op de juiste manier plannen en schalen. Uw planning houdt rekening met factoren zoals gegevensvolume, verwerkingscapaciteit en vereisten voor gegevenslocatie.

Voorkeur geven aan platformfuncties

Het voorkeur geven aan platformfuncties gaat over het gebruik van ingebouwde functionaliteiten van een provider om specifieke taken zonder aangepaste code af te handelen. Leveranciers ontwerpen platformfuncties om specifieke taken efficiënt op schaal af te handelen en ze onderhouden deze functies regelmatig. Met platformfuncties kunt u beter profiteren van de mogelijkheden van de cloudinfrastructuur. Kies services waarmee u functionaliteit naar het platform kunt offloaden in plaats van uw eigen aangepaste code te schrijven en te onderhouden. In veel gevallen bieden PaaS-oplossingen (Platform-as-a-Service) betere prestatie-efficiëntie dan aangepaste code. Aangepaste code voegt complexiteit toe en maakt de workload gevoelig voor prestatieproblemen. Ontwikkel alleen aangepaste code wanneer servicefuncties niet voldoende zijn.

Compromis: de beste service voor uw workload is mogelijk een technologie waarmee uw team niet bedreven is, zich niet kan veroorloven of waarvoor mogelijk extra beveiligingslagen nodig zijn. Een openbare load balancer kan bijvoorbeeld voldoen aan uw prestatiebehoeften. Maar als u geen firewall voor webtoepassingen hebt, moet u mogelijk een firewall implementeren om de werkbelasting te beveiligen.

Infrastructuurvereisten evalueren

De prestatie-efficiëntie van resources is gekoppeld aan de infrastructuur waarop ze zich bevinden. Het maakt de selectie van de juiste infrastructuur essentieel voor de efficiëntie van de prestaties van de service. Het evalueren van infrastructuurvereisten betekent dat u de geografische regio en beschikbaarheidszones kunt identificeren die het meest geschikt zijn voor de ondersteuning van uw workload. Belangrijke overwegingen in deze besluitvorming zijn:

  • Inzicht in regio's en beschikbaarheidszones. Elke regio komt overeen met een afzonderlijke geografische locatie. Beschikbaarheidszones vertegenwoordigen afzonderlijke fysieke datacenters binnen een bepaalde regio.

  • Implementatiemodel voor één regio versus implementatiemodel met meerdere regio's. Met een implementatiemodel met één regio worden alle resources in één regio geïmplementeerd. Met een implementatiemodel voor meerdere regio's worden resources geïmplementeerd in meerdere regio's. Een implementatie met meerdere regio's kan de latentie voor eindgebruikers verminderen en capaciteitsbeperkingen beperken. Het kan echter ook de kosten en complexiteit van de workload verhogen. Kies het implementatiemodel dat het beste past bij uw workloadbehoeften.

  • Inzicht in beschikbare functies. Verschillende regio's hebben verschillende beschikbare functies, zoals het aantal services en beschikbaarheidszones. Meer informatie over de functies die beschikbaar zijn in een regio voordat u deze selecteert. Zorg ervoor dat een regio voldoet aan de prestatiebehoeften van uw workload.

  • Overweeg latentie. Latentie, de tijd die nodig is om van bron naar bestemming te reizen, verhoogt de verdere services van elkaar. Services die communiceren tussen regio's of beschikbaarheidszones kunnen te maken krijgen met een verhoogde latentie. Het wordt aanbevolen om services te identificeren die vaak communiceren en positioneren binnen dezelfde regio. Daarnaast kan het selecteren van een regio die overeenkomt met uw primaire gebruikersbestand latentie minimaliseren, wat een betere gebruikerservaring biedt.

  • Inzicht in datacentrumtoewijzing. Beschikbaarheidszones worden mogelijk niet consistent toegewezen aan dezelfde datacenters in verschillende abonnementen. Zone 1 in Abonnement A kan bijvoorbeeld afwijken van Zone 1 in Abonnement B. Wanneer u met meerdere abonnementen werkt, moet u deze toewijzingen kennen om zones te selecteren die de prestaties optimaal ondersteunen.

Netwerkvereisten evalueren

Evalueer uw netwerkbehoeften om de juiste workloadservices en configuraties te bepalen. Zorg ervoor dat het netwerk uw workload kan ondersteunen. Als u netwerkvereisten wilt evalueren, kunt u het volgende overwegen:

  • Netwerkverkeer begrijpen. Beoordeel het verwachte netwerkverkeer voor de workload. Inzicht in de behoeften voor gegevensoverdracht en de frequentie van netwerkaanvragen.

  • Inzicht in bandbreedtevereisten. Bepaal de bandbreedtevereisten voor de workload. Houd rekening met de hoeveelheid gegevens die via het netwerk worden verzonden en ontvangen.

  • Inzicht in netwerklatentie. Evalueer de gewenste latentie voor de workload. Gebruik particuliere virtuele netwerken en backbone-netwerken in plaats van het openbare internet te doorlopen. Deze techniek vermindert de latentie van de workload.

  • Inzicht in doorvoer. Houd rekening met de vereiste doorvoer voor de workload. Doorvoer verwijst naar de hoeveelheid gegevens die binnen een bepaalde tijd via een netwerk kan worden verzonden. Configureer de netwerkrouteringsopties om te profiteren van de voordelen van netwerkdoorvoer.

Compromis: particuliere virtuele netwerken beperkt de openbare toegang en maakt het moeilijk om resources te implementeren en te beheren.

Compute-vereisten evalueren

Het evalueren van rekenvereisten omvat het beoordelen van de specifieke rekenbehoeften van een workload, waaronder factoren zoals exemplaartype, schaalbaarheid en containerisatie. Verschillende rekenservices hebben verschillende mogelijkheden en kenmerken die van invloed kunnen zijn op de prestaties van uw workload. Selecteer de optimale rekenservice om ervoor te zorgen dat uw workload efficiënt wordt uitgevoerd. Houd rekening met de volgende strategieën:

  • Inzicht in instantietypen. Verschillende exemplaartypen zijn geoptimaliseerd voor verschillende werkbelastingen, zoals voor CPU geoptimaliseerde, geoptimaliseerde geheugen- en GPU-exemplaren. Kies het exemplaartype dat overeenkomt met uw behoeften.

  • Overweeg automatisch schalen. Als uw workload een variabele vraag heeft, kunt u een rekenservice overwegen met een functie voor automatisch schalen waarmee de rekencapaciteit automatisch kan worden aangepast op basis van de vraag. Automatisch schalen zorgt ervoor dat u voldoende resources hebt tijdens piektijden en voorkomt overprovisioning tijdens perioden met lage vraag.

  • Overweeg containerisatie. Containers bieden prestatievoordelen vergeleken met een niet-gecontaineriseerde workload. Overweeg containerisatie te gebruiken als deze past bij uw architectuurbehoeften. Containers verbeteren de rekenprestaties door isolatie, resource-efficiëntie, snelle opstarttijd en draagbaarheid.

    Wanneer u containers gebruikt, kunt u rekening houden met ontwerpfactoren zoals het containeriseren van alle toepassingsonderdelen. Gebruik op Linux gebaseerde containerruntimes voor lichtgewicht installatiekopieën. Geef containers korte levenscycluss om ze onveranderbaar en vervangbaar te maken. Verzamel relevante logboeken en metrische gegevens van containers, containerhosts en het onderliggende cluster. Gebruik deze gegevens om de prestaties te bewaken en te analyseren. Containers zijn slechts één onderdeel van een algemene architectuur. Kies een geschikte containerorchestrator, zoals Kubernetes, om de prestaties en schaalbaarheid verder te verbeteren.

    Containervoordeel Description
    Isolatie Containers bieden geïsoleerde omgevingen voor toepassingen. Containers zorgen ervoor dat toepassingsbronnen elkaar niet verstoren. Deze isolatie zorgt ervoor dat rekenresources die zijn toegewezen aan een container, zijn toegewezen aan het uitvoeren van een specifieke toepassing, wat resulteert in betere prestaties.
    Resource-efficiëntie Containers zijn lichtgewicht en delen de kernel van het hostbesturingssysteem, waardoor efficiënt resourcegebruik mogelijk is. Meerdere containers kunnen worden uitgevoerd op dezelfde gevirtualiseerde infrastructuur, waardoor het gebruik van rekenresources wordt gemaximaliseerd.
    Snelle opstarttijd Containerinstallatiekopieën zijn vooraf samengesteld en worden snel gestart wanneer dat nodig is. Deze snelle opstarttijd maakt snelle schaalbaarheid mogelijk. Hiermee kunnen toepassingen omhoog of omlaag schalen op basis van vraag en prestatieknelpunten voorkomen.
    Portability Containers bevatten alle vereiste afhankelijkheden en bibliotheken in de installatiekopieën. Met containers is het eenvoudiger om toepassingen over verschillende besturingssystemen of omgevingen te verplaatsen. Deze draagbaarheid maakt flexibiliteit mogelijk bij het implementeren van toepassingen en maakt eenvoudige migratie mogelijk tussen cloudproviders of on-premises omgevingen.
  • Kies de juiste laag. Binnen elke rekenservice kunt u de rekencapaciteit instellen, functies selecteren en mogelijkheden inschakelen. Kies op basis van uw prestatiedoelen de juiste servicelaag voor uw rekenservice.

  • Bepaal het aantal exemplaren. Bepaal het minimale aantal exemplaren dat uw workload nodig heeft. Sommige workloads, zelfs bij minimale belasting, vereisen mogelijk meer dan één exemplaar van een rekenresource. Stel het minimale aantal exemplaren dienovereenkomstig in.

Taakverdelingsvereisten evalueren

Taakverdeling zorgt ervoor dat netwerkverkeer gelijkmatig wordt verdeeld en voorkomt dat één server wordt overweldigd met aanvragen. Taakverdeling helpt knelpunten te voorkomen en reactietijden te verminderen. Evalueer de verschillende taakverdelingsservices die uw cloudprovider biedt. Raadpleeg de documentatie en vergelijkingshulpprogramma's van de cloudprovider om inzicht te hebben in de functies. Selecteer de meest geschikte service voor uw workload. Als u een taakverdelingsservice wilt selecteren, kunt u het volgende overwegen:

  • Inzicht in het verkeerstype: Bepaal of de taakverdelingsservice webverkeer moet verwerken, zoals HTTP en HTTPS, of andere protocollen, zoals Transmission Control Protocol (TCP) of User Datagram Protocol (UDP).

  • Algemene of regionale routering kennen: bepaal of uw workload taakverdeling in een specifieke regio of in meerdere regio's vereist.

  • Kennis van serviceniveaudoelstellingen (SLO's): Houd rekening met de SLA (Service Level Agreement). Verschillende taakverdelingsservices bieden verschillende prestatieniveaus.

  • Inzicht in functies: Overweeg taakverdelingsservices die siteversnelling, optimale verkeersdistributie en laag-4-taakverdeling met lage latentie bieden.

Vereisten voor gegevensopslag evalueren

Het evalueren van vereisten voor gegevensopslag gaat over het beoordelen van de specifieke behoeften en voorwaarden voor het opslaan, ophalen en beheren van gegevens. Deze evaluatie houdt rekening met factoren zoals gegevensvolume, toegangssnelheid, consistentie en duurzaamheid. Voor een workload zijn mogelijk meerdere typen gegevensarchieven vereist op basis van verschillende zakelijke en technische vereisten. Het identificeren van de juiste services voor gegevensopslag en de juiste implementatie helpt knelpunten te voorkomen en zorgt voor snelle toegang tot gegevens.

Databasevereisten evalueren

De database kan invloed hebben op factoren zoals gegevensopslag en ophalen, transactieverwerking, consistentiegaranties en verwerking van grote of snel veranderende gegevens. Beoordeel de behoeften en criteria voor uw database. Selecteer een databasesysteem dat aan deze vereisten kan voldoen. Evalueer de databasevereisten voordat u een database kiest. Voer de volgende stappen uit om de databasevereisten te evalueren en de juiste database te kiezen:

  • Identificeer de behoeften van de workload. Inzicht in de specifieke vereisten van uw workload, zoals gegevensvolume, verwachte transactiesnelheden, gelijktijdigheid, gegevenstypen en verwachte groei. Evalueer verschillende databasesystemen op basis van uw workloadbehoeften. Als uw workload bijvoorbeeld high-performance realtime gegevensverwerking vereist, kunt u een databasesysteem kiezen dat is geoptimaliseerd voor snelle gegevensopname en lage latentie.

  • Houd rekening met het gegevensmodel. Bepaal het gegevensmodel dat het beste bij uw workload past. Evalueer de databasevereisten om ervoor te zorgen dat de gekozen database de vereiste gegevensstructuren, relaties en integriteitsbeperkingen ondersteunt. Als uw gegevens bijvoorbeeld een zeer relationele structuur hebben, kunt u kiezen voor een relationeel databasebeheersysteem (RDBMS) dat robuuste ondersteuning biedt voor transacties en referentiële integriteit. Het gegevensmodel kan hiërarchisch, netwerk, relationeel, objectgeoriënteerd of NoSQL zijn. Evalueer de complexiteit van uw gegevensmodel. Zorg ervoor dat de gekozen database de vereiste gegevensstructuren en -relaties ondersteunt.

  • Evalueer de mogelijkheden. Denk aan factoren zoals lees-/schrijfpatronen, querycomplexiteit, latentievereisten en schaalbaarheidsbehoeften. Evalueer de prestatiemogelijkheden van verschillende databasesystemen dienovereenkomstig. Sommige databases excelleren in leesintensieve werkbelastingen, terwijl andere zijn geoptimaliseerd voor schrijfintensieve of analytische workloads.

  • Beoordeel de belasting. Denk aan factoren zoals gegevensvolume, transactiepercentages, lees-/schrijfverhoudingen en verwachte groei. Kies een database die de verwachte workload kan verwerken om een soepele werking te garanderen en prestatieknelpunten te voorkomen wanneer uw workload wordt geschaald. Houd rekening met de schaalbaarheidsvereisten van uw workload. Deze vereisten omvatten verwachte gegevensgroei, gelijktijdige gebruikerstoegang en de behoefte aan horizontaal of verticaal schalen. Evalueer de schaalbaarheidsopties en beschikbaarheidsfuncties die verschillende databasesystemen bieden.

Opslagvereisten evalueren

Kies opslagservices die zijn afgestemd op uw gegevenstoegangspatronen, duurzaamheidsvereisten en prestatiebehoeften. De meeste cloudworkloads maken gebruik van een combinatie van opslagtechnologieën. Deze techniek wordt de polyglot persistence-benadering genoemd. Bepaal de juiste combinatie van opslagservices voor uw workload. U kunt ook gegevens scheiden om besmetting te voorkomen. U hebt bijvoorbeeld afzonderlijke opslagaccounts voor het bewaken van gegevens en zakelijke gegevens. Het kiezen van de juiste mix en juiste implementatie is belangrijk voor het optimaliseren van de prestaties van toepassingen.

Cachevereisten evalueren

In een cache worden vaak gebruikte gegevens opgeslagen. Caching vermindert de latentie van gegevenstoegang en verlaagt de belasting van gegevensopslagonderdelen. Hiermee kan de workload meer aanvragen verwerken zonder te schalen. Het is gebruikelijk om workloadgegevens en statische inhoud in de cache op te cachen. Een Redis-cache kan sessiegegevens, databaseresultaten, API-antwoorden en referentiegegevens opslaan, zoals configuratie-instellingen. Een netwerk voor contentlevering of statische web-app kan statische inhoud in de cache opslaan en leveren. Overweeg om gegevens in de cache op te slaan om de prestaties van uw workload te verbeteren. Kies de juiste cacheoptie voor uw workload, en geef de voorkeur aan de platformcachingservices, zoals Azure Redis Cache, boven aangepaste of zelf-hostende services.

Azure facilitering

Informatie over vereisten: Gebruik Azure Monitor om gegevens van uw workload te verzamelen en te analyseren. Monitor biedt inzicht in de prestaties en status van uw workloads, zodat u problemen kunt identificeren en oplossen.

Inzicht in en evaluatie van services: Bekijk Azure-services en -producten om te bepalen of ze voldoen aan uw prestatievereisten. Azure biedt verschillende services die hetzelfde resultaat bereiken. U hebt de flexibiliteit om uw keuze van service af te stemmen op uw prestatiebehoeften, teamvaardigheden en kostenvereisten.

Zie azure-abonnements- en servicelimieten, quota en beperkingen voor een lijst met de meest voorkomende Azure-limieten.

In het voorbeeld querylimieten en quota ziet u hoe u query's kunt uitvoeren op de limieten en quota voor veelgebruikte resources.

Azure heeft veel services die geschikt zijn voor elke workload. Bekijk de selectierichtlijnen voor elk servicetype om uw selectie te stroomlijnen op basis van uw vereisten. Zie de volgende handleidingen om te kiezen:

Controlelijst voor prestatie-efficiëntie

Raadpleeg de volledige set aanbevelingen.