Gids voor de toepassingsarchitectuur in AzureAzure Application Architecture Guide

Deze handleiding biedt een gestructureerde benadering voor het ontwerpen van toepassingen in Azure die schaalbaar, beveiligd, robuust en maximaal beschikbaar zijn.This guide presents a structured approach for designing applications on Azure that are scalable, secure, resilient, and highly available. De handleiding is gebaseerd op bewezen praktijken die we van interactie met klanten hebben geleerd.It is based on proven practices that we have learned from customer engagements.

InleidingIntroduction

De cloud verandert de manier waarop toepassingen worden ontworpen en beveiligd.The cloud is changing how applications are designed and secured. Er worden geen monolieten gebruikt, de toepassingen worden ontleed in kleinere, gedecentraliseerde services.Instead of monoliths, applications are decomposed into smaller, decentralized services. Deze services communiceren via API's of met behulp van asynchrone berichten of gebeurtenissen.These services communicate through APIs or by using asynchronous messaging or eventing. Toepassingen schalen horizontaal. Er worden nieuwe exemplaren toegevoegd als de vraag dit vereist.Applications scale horizontally, adding new instances as demand requires.

Deze trends brengen nieuwe uitdagingen met zich mee.These trends bring new challenges. De toepassingsstatus wordt gedistribueerd.Application state is distributed. Bewerkingen worden parallel en asynchroon uitgevoerd.Operations are done in parallel and asynchronously. Toepassingen moet robuust zijn wanneer er fouten optreden.Applications must be resilient when failures occur. Schadelijke actoren richten zich continu op toepassingen.Malicious actors continuously target applications. Implementaties moeten geautomatiseerd en voorspelbaar zijn.Deployments must be automated and predictable. Bewaking en telemetrie zijn essentieel om inzicht te krijgen in het systeem.Monitoring and telemetry are critical for gaining insight into the system. Deze handleiding is ontworpen om u te helpen om te gaan met wijzigingen.This guide is designed to help you navigate these changes.

Traditionele on-premisesTraditional on-premisesModerne cloudModern cloud
MonolithischMonolithic
Ontworpen voor voorspelbare schaalbaarheidDesigned for predictable scalability
Relationele databaseRelational database
Gesynchroniseerde verwerkingSynchronized processing
Ontwerpen ter voorkoming van fouten (MBTF)Design to avoid failures (MTBF)
Incidentele grote updatesOccasional large updates
Handmatig beheerManual management
Snowflake-serversSnowflake servers
OpgesplitstDecomposed
Ontwerpen voor elastisch uitschalenDesigned for elastic scale
Polyglot-persistentie (combinatie van opslagtechnologieën)Polyglot persistence (mix of storage technologies)
Asynchrone verwerkingAsynchronous processing
Bij het ontwerpen rekening houden met fouten (MTTR)Design for failure (MTTR)
Regelmatig kleine updatesFrequent small updates
Geautomatiseerde zelfbeheerAutomated self-management
Onveranderbare infrastructuurImmutable infrastructure

Hoe deze handleiding is opgebouwdHow this guide is structured

De handleiding Azure Application Architecture is ingedeeld als een reeks stappen, van de architectuur en het ontwerp tot aan de implementatie.The Azure Application Architecture Guide is organized as a series of steps, from the architecture and design to implementation. Bij elke stap vindt u ondersteunende richtlijnen om u te helpen bij het ontwerpen van uw toepassingsarchitectuur.For each step, there is supporting guidance that will help you with the design of your application architecture.

Diagram dat de structuur van deze handleiding weergeeft, met de gedeelten van dit artikel in een stroomdiagram.

ArchitectuurstijlenArchitecture styles

Het eerste beslissingspunt is het belangrijkst.The first decision point is the most fundamental. Wat voor soort architectuur wilt u maken?What kind of architecture are you building? Gaat het om een architectuur voor microservices, een traditionelere N-tier-toepassing of een oplossing voor big data.It might be a microservices architecture, a more traditional N-tier application, or a big data solution. We hebben een aantal verschillende architectuurstijlen geïdentificeerd.We have identified several distinct architecture styles. Elke stijl heeft voor- en nadelen.There are benefits and challenges to each.

Meer informatie: ArchitectuurstijlenLearn more: Architecture styles

TechnologieoptiesTechnology choices

Als u weet welk type architectuur u bouwt, kunt u nu beginnen om de belangrijkste technologische onderdelen voor de architectuur te kiezen.Knowing the type of architecture you are building, now you can start to choose the main technology pieces for the architecture. De volgende keuzes zijn essentieel:The following technology choices are critical:

  • Compute verwijst naar het hostingmodel voor de compute-bronnen waarmee uw toepassing wordt uitgevoerd.Compute refers to the hosting model for the computing resources that your applications run on. Raadpleeg Een compute-service kiezen voor meer informatie.For more information, see Choose a compute service.

  • Gegevensarchieven omvatten databases, maar ook opslag voor berichtenwachtrijen, caches, logboekgegevens en andere zaken die een toepassing kan opslaan.Data stores include databases but also storage for message queues, caches, logs, and anything else that an application might persist to storage. Raadpleeg Een gegevensopslagservice kiezen voor meer informatie.For more information, see Choose a data store.

  • Berichten technologieën zorgen voor asynchrone berichten tussen onderdelen van het systeem.Messaging technologies enable asynchronous messages between components of the system. Raadpleeg Een berichtenservice kiezen voor meer informatie.For more information, see Choose a messaging service.

Waarschijnlijk moet u naderhand meer technologische keuzes maken, maar deze drie elementen (compute, gegevens en berichten) staan centraal in de meeste cloudtoepassingen en bepalen veel aspecten van uw ontwerp.You will probably have to make additional technology choices along the way, but these three elements (compute, data, and messaging) are central to most cloud applications and will determine many aspects of your design.

De architectuur ontwerpenDesign the architecture

Nadat u de architectuurstijl en de belangrijkste technologische onderdelen hebt gekozen, bent u klaar om het specifieke ontwerp van uw toepassing aan te pakken.Once you have chosen the architecture style and the major technology components, you are ready to tackle the specific design of your application. Elke toepassing is anders, maar de volgende resources kunnen u verder helpen:Every application is different, but the following resources can help you along the way:

ReferentiearchitecturenReference architectures

Afhankelijk van uw scenario is een van onze referentiearchitecturen een goed uitgangspunt.Depending on your scenario, one of our reference architectures may be a good starting point. Elke referentiearchitectuur omvat aanbevolen praktijken, samen met overwegingen voor schaalbaarheid, beschikbaarheid, beveiliging, tolerantie en andere aspecten van het ontwerp.Each reference architecture includes recommended practices, along with considerations for scalability, availability, security, resilience, and other aspects of the design. De meeste architecturen bevatten ook een implementeerbare oplossing of een referentie-implementatie.Most also include a deployable solution or reference implementation.

OntwerpprincipesDesign principles

We hebben op het hoogste niveau tien ontwerpprincipes geïdentificeerd waarmee u uw toepassing in grotere mate schaalbaar, flexibel en beheerbaar kunt maken.We have identified 10 high-level design principles that will make your application more scalable, resilient, and manageable. Deze ontwerpprincipes zijn van toepassing op alle architectuurstijlen.These design principles apply to any architecture style. Houd tijdens het ontwerpproces deze tien ontwerpprincipes in uw achterhoofd.Throughout the design process, keep these 10 high-level design principles in mind. Raadpleeg voor meer informatie Ontwerpprincipes.For more information, see Design principles.

OntwerppatronenDesign patterns

Software-ontwerppatronen zijn herhaalbare patronen die bewezen specifieke problemen oplossen.Software design patterns are repeatable patterns that are proven to solve specific problems. Onze catalogus van Cloud-ontwerppatronen pakken specifieke uitdagingen in gedistribueerde systemen aan.Our catalog of Cloud design patterns addresses specific challenges in distributed systems. Ze hebben betrekking op bijvoorbeeld beschikbaarheid, tolerantie, prestaties en beveiliging.They address aspects such as availability, resiliency, performance, and security. De catalogus met ontwerppatronen vindt u hier.You can find our catalog of design patterns here.

Aanbevolen proceduresBest practices

Onze artikelen over best practices behandelen verschillende ontwerpoverwegingen, waaronder API-ontwerp, automatisch schalen, gegevenspartitionering, caching, enzovoorts.Our best practices articles cover various design considerations including API design, autoscaling, data partitioning, caching, and so forth. Bekijk deze en pas de best practices toe die passend zijn voor uw toepassing.Review these and apply the best practices that are appropriate for your application.

Aanbevolen beveiligingsproceduresSecurity best practices

Onze best practices voor beveiliging beschrijven hoe u ervoor zorgt dat de vertrouwelijkheid, integriteit en beschikbaarheid van uw toepassing niet worden aangetast door kwaadaardige actoren.Our security best practices describe how to ensure that the confidentiality, integrity, and availability of your application aren't compromised by malicious actors.

KwaliteitspijlersQuality pillars

Een succesvolle cloudtoepassing richt zich op de vijf pijlers van softwarekwaliteit: Kostenoptimalisatie, operationele topprestaties, prestatie-efficiëntie, betrouwbaarheid en beveiliging.A successful cloud application will focus on five pillars of software quality: Cost optimization, Operational excellence, Performance efficiency, Reliability, and Security.

Gebruik Microsoft Azure Well-Architected Framework om uw architectuur te beoordelen op deze vijf pijlers.Leverage the Microsoft Azure Well-Architected Framework to assess your architecture across these five pillars.

Volgende stappenNext steps