Delen via


Grondbeginselen van Azure-toepassingsarchitectuur

Een toepassing die is ontworpen voor workloads die in de cloud worden gehost, voldoet aan de bedrijfsvereisten van de oplossing en bevat cloudeigen onderdelen en functionaliteit. Een goed ontworpen cloudtoepassing heeft betrekking op betrouwbaarheid, beveiliging, kosten, bewerkingen en prestatieoverwegingen. Deze overwegingen zijn afgestemd op de bedrijfsvereisten, de specifieke kenmerken van het cloudhostingplatform en de functionaliteit die het platform biedt.

U hoeft geen specifieke toepassingsstijl, zoals microservices, te gebruiken om een toepassing voor cloudworkloads te ontwerpen. Cloudhosting maakt echter veel ontwerppatronen van toepassingen beter benaderbaar dan het hosten van oplossingen die niet systeemeigen een diverse selectie van toepassings- en gegevensplatformopties, schaalmogelijkheden, beveiligingscontroles en berichtopties bieden. Cloudworkloads profiteren van toepassingen die per ontwerp zijn opgesplitst in kleinere, gedecentraliseerde services. Deze services communiceren met API's of door gebruik te maken van asynchrone berichtenverkeer of gebeurtenisverwerking. Toepassingen worden horizontaal geschaald door nieuwe exemplaren toe te voegen wanneer de vraag toeneemt.

Toepassingen die gebruikmaken van de platformen voor het hosten van toepassingen in de cloud, berichtenmogelijkheden en ontledingsservices, zijn onderhevig aan veelvoorkomende problemen voor gedistribueerde systemen. In deze systemen wordt de toepassingsstatus gedistribueerd en worden bewerkingen parallel en asynchroon uitgevoerd. Toepassingen moeten tolerant zijn wanneer er fouten optreden. Kwaadwillende actoren richten zich voortdurend op toepassingen. Implementaties moeten geautomatiseerd en voorspelbaar zijn. Bewaking en telemetrie zijn van cruciaal belang voor het verkrijgen van inzicht in het systeem.

De volgende kolommen bevatten enkele algemene kenmerken van on-premises ontwerp en cloudontwerp.

Typisch on-premise ontwerp

  • Monolithische en gecolloceerde functionaliteit en gegevens
  • Ontworpen voor voorspelbare schaal of is overvoorzien
  • Relationele database
  • Gesynchroniseerde verwerking
  • Ontworpen om fouten te voorkomen en de gemiddelde tijd tussen storingen (MBTF) te meten
  • Resources worden voorzien via IT-functies
  • Snowflake-servers en huisdierservers

Typische cloudontwerpen

  • Gedecomposeerde en gedistribueerde functionaliteit en gegevens
  • Ontworpen voor elastische schaalbaarheid
  • Polyglot-persistentie met behulp van een combinatie van opslagtechnologieën
  • Asynchrone verwerking
  • Ontworpen om storingen te weerstaan en de MTBF te meten
  • Voorbereid op fouten en meet de gemiddelde tijd om te herstellen
  • Resources worden naar behoefte ingericht via infrastructure as code
  • Onveranderbare en vervangbare infrastructuur

Toepassingen ontwerpen voor Azure

Cloudarchitecten die expertise hebben op het gebied van cloudhosting en strategische compromisbeslissingen kunnen nemen, moeten cloudtoepassingen ontwerpen. Azure biedt resources om architecten te helpen bij het ontwikkelen van toepassingen en het begeleiden van ontwikkelteams om ze te implementeren. Om een goede workload en toepassingsontwerp te bereiken, moeten architecten het volgende doen:

U kunt Azure gebruiken om toepassingen te hosten en opnieuw te hosten die niet zijn ontworpen voor de cloud. U kunt workloadtoepassingen aanpassen voor het gebruik van cloudfunctionaliteit, maar het opnieuw hosten van een toepassing die is ontworpen voor vaste resources en schaal, wordt niet beschouwd als een cloudeigen implementatie.

Afstemmen op standaarden voor cloudimplementatie van organisaties

Uw toepassing maakt deel uit van een workload die waarschijnlijk moet voldoen aan de organisatiestandaarden en -governance. Organisaties van elke grootte en cloudrijpheid kunnen gebruikmaken van het Cloud Adoption Framework voor Azure om hun strategie voor acceptatie in de hele Azure te formaliseren, gereedheid, innovatie, beheer, governance en beveiligingsinitiatieven. Een deel van deze benadering is het standaardiseren van een consistente benadering voor workloads, zoals het gebruik van Azure-landingszones. Azure-landingszones bieden organisatiebrede governance en biedt workloadteams en architecten democratiseerde toegang tot resources om te voldoen aan gelokaliseerde bedrijfsdoelstellingen. Als architect die toepassingen ontwerpt, is het van cruciaal belang dat u de macroomgeving en verwachtingen voor workloadbewerkingen begrijpt, zoals landingszones voor toepassingen.

De Strategie voor azure-acceptatie van uw organisatie mag geen invloed hebben op de architectuurstijl die u kiest, maar het kan wel technologische keuzes of beveiligingsgrenzen beperken.

Volg het Well-Architected Framework

U kunt het ontwerp en de implementatie van elke workload evalueren via verschillende lenzen. Gebruik het Well-Architected Framework om uw beslissingen te evalueren en af te stemmen op ontwerpprincipes in deze vijf belangrijkste architectuurpijlers:

Door deze principes te volgen en de compromissen tussen deze architectuurpijlers te evalueren, kunt u een ontwerp produceren dat voldoet aan de bedrijfsvereisten en voldoende duurzaam, onderhoudbaar, veilig en kosten geoptimaliseerd is voor uitvoering in Azure. Deze beslissingen moeten uw keuze voor architectuurstijl informeren en helpen uw technologiekeuzen of beveiligingsgrenzen te beperken, omdat deze betrekking hebben op de behoeften van uw specifieke workload.

Uw team of organisatie heeft mogelijk andere ontwerpprincipes, zoals duurzaamheid en ethiek, die u kunt gebruiken om uw workload te evalueren.

Typische architectuurstijlen begrijpen

Nadat u de organisatieomgeving begrijpt waarin uw toepassing aanwezig is en de basis van een goed architectuurontwerp op basis van het Well-Architected Framework, moet u beslissen in welk type architectuur u wilt bouwen. Het kan een microservicearchitectuur, een meer traditionele N-laag-toepassing of een big data-oplossing zijn. Deze architectuurstijlen zijn uniek en ontworpen voor verschillende resultaten. Wanneer u architectuurstijlen evalueert, moet u ook modellen voor gegevensopslag selecteren om statusbeheer aan te pakken.

Evalueer de verschillende architectuurstijlen en gegevensopslagmodellen om inzicht te krijgen in de voordelen en uitdagingen die elke optie biedt.

Werkbelastingen in het Well-Architected Framework

In het artikelWell-Architected Framework-workloads worden verschillende workloadclassificaties of -typen beschreven. U vindt artikelen over bedrijfskritieke workloads, AI- en machine learning-workloads of workloads van software als een service. Deze workloadspecifieke artikelen passen de vijf kernpijlers van het Well-Architected Framework toe op het specifieke domein. Als uw toepassing deel uitmaakt van een workload die overeenkomt met een van deze gedocumenteerde patronen, raadpleegt u de respectieve richtlijnen om u te helpen uw ontwerp te benaderen door een set workloadspecifieke ontwerpprincipes en aanbevelingen te volgen voor algemene ontwerpgebieden, zoals toepassingsplatform, gegevensplatform en netwerken. Sommige workloadtypen kunnen baat hebben bij het selecteren van een specifieke architectuurstijl of een gegevensarchiefmodel.

Beste praktijken

Zie De aanbevolen procedures in cloudtoepassingen voor meer informatie over verschillende ontwerpoverwegingen, waaronder API-ontwerp, automatisch schalen, gegevenspartitionering en caching. Bekijk deze overwegingen en pas de aanbevolen procedures toe die geschikt zijn voor uw toepassing.

Ontwerppatronen gebruiken om veelvoorkomende problemen op te lossen en strategische compromissen te introduceren

Uw toepassing heeft specifieke zakelijke vereisten, doelen en metingen van succes. U moet deze functionele en niet-functionele vereisten opscompeteren in discrete activiteiten die samenwerken om een oplossing te bereiken die voldoet aan de verwachtingen van uw en uw klanten. Deze activiteiten volgen doorgaans patronen die de software-industrie heeft vastgesteld. Softwareontwerppatronen zijn benoemde en herhaalbare benaderingen die u kunt toepassen op verwerking of gegevensopslag. Deze patronen zijn bewezen om specifieke problemen met bekende compromissen op te lossen.

De azure-catalogus met cloudontwerppatronen biedt een oplossing voor specifieke uitdagingen in gedistribueerde systemen.

Weloverwogen technologiekeuzen maken

Nadat u het type architectuur hebt bepaald dat u wilt bouwen en de ontwerppatronen die u verwacht te gebruiken, kunt u de belangrijkste technologieonderdelen voor de architectuur kiezen. De volgende technologische keuzes zijn essentieel:

U maakt waarschijnlijk andere technologische keuzes, maar rekenkracht, gegevens, berichten en AI zijn centraal in de meeste cloudtoepassingen en bepalen veel aspecten van uw ontwerp.

Referentiearchitecturen evalueren

Azure Architecture Center bevat artikelen over oplossingsideeën, voorbeeldworkloads en referentiearchitecturen. In deze artikelen worden doorgaans de algemene onderdelen en overwegingen vermeld die overeenkomen met het Well-Architected Framework. Sommige van deze artikelen bevatten een implementeerbare oplossing die wordt gehost op GitHub. Hoewel het onwaarschijnlijk is dat een van deze scenario's precies is wat u bouwt, zijn ze een goed uitgangspunt. U kunt de richtlijnen aanpassen aan uw specifieke behoeften.

Blader door de catalogus met architecturen in het Azure Architecture Center.

Servicespecifieke handleidingen bekijken

Nadat u de kerntechnologie hebt geselecteerd en de referentiearchitecturen hebt geraadpleegd, raadpleegt u de documentatie en richtlijnen die specifiek zijn voor de services in uw architectuur. Gebruik de volgende bronnen voor servicespecifieke richtlijnen:

  • Well-Architected Framework-servicehandleidingen: Het Well-Architected Framework bevat artikelen over veel Azure-services. In de artikelen worden de vijf pijlers van architectuur toegepast op elke service.

  • Azure-betrouwbaarheidshandleidingen: De Azure-betrouwbaarheidshub bevat uitgebreide artikelen die specifiek betrekking hebben op de betrouwbaarheidskenmerken van veel Azure-services. In deze artikelen worden enkele van de meest kritieke onderwerpen over betrouwbaarheid beschreven, zoals ondersteuning voor beschikbaarheidszones en verwacht gedrag tijdens verschillende soorten storingen.

Afkomstig van een andere cloud?

Als u bekend bent met het ontwerpen van toepassingen in een andere cloudprovider, zijn veel van dezelfde basisprincipes van toepassing. Architectuurstijlen en cloudontwerppatronen zijn bijvoorbeeld conceptueel cloudneutraal. Zie voor meer informatie de volgende artikelen uit de handleiding over servicemapping en architectuur:

Volgende stap