Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Belangrijk
Afschaffingsmelding: Dit artikel is afgeschaft en wordt niet meer bijgewerkt. Om ervoor te zorgen dat alleen de beste richtlijnen worden weergegeven, wordt dit artikel in mei 2026 verwijderd.
Zie Azure Container Apps architectuurrichtlijnen in het Azure Architecture Center voor alternatieve richtlijnen.
Als u deze richtlijnen wilt opslaan, kunt u Download a PDF linksonder op deze pagina selecteren of de bestanden downloaden van GitHub.
Bekijk functies en services van Azure Container Apps beschikbaar om u te helpen bij het ontwerpen en onderhouden van uw app voor de gezondheid en stabiliteit op lange termijn.
Inzicht in de limieten voor Container Apps.
Overweeg werkbelastingen op netwerk-, reken-, monitor- of gegevensniveau te isoleren.
Inzicht krijgen in manieren om het resourceverbruik van workloads te beheren.
Gebruik statustests om te helpen bij het rapporteren en herstellen van de verslechterende toepassingsstatus.
Gebruik Dapr om beveiligde verbindingen met externe services tot stand te brengen.
Gebruik logboekregistratie en bewaking om inzicht te krijgen in eventuele problemen die zijn gekoppeld aan uw toepassingen.
Gebruik waarschuwingen tijdens kritieke toepassings- en systeemevenementen om ervoor te zorgen dat operations-medewerkers snel actie kunnen ondernemen in de gebeurtenistoepassingsfouten.
Definieer een schaalstrategie om ervoor te zorgen dat er voldoende capaciteit beschikbaar is om verkeer naar uw toepassing te verwerken, terwijl ongebruikte capaciteit wordt geminimaliseerd. Schaaltriggers omvatten CPU- of geheugengebruik, samen met elke door KEDA ondersteunde schaalaanpassing.
Je moet vertrouwd zijn met Envoy, aangezien Azure Container Apps het gebruikt als een netwerkproxy.
Houd rekening met RTO-vereisten (Recovery Time Objective) en RPO (Recovery Point Objective) voor bedrijfscontinuïteit en herstel na noodgevallen. Definieer een SLA (Service Level Agreement) voor uw infrastructuur en toepassing. Meer informatie over de SLA voor Azure Container Apps. Zie de sectie MET SLA-details voor informatie over maandelijkse uptimeberekeningen.
Afhankelijk van de specifieke vereisten voor uw toepassing, moet u mogelijk maatregelen voor hoge beschikbaarheid gebruiken om te zorgen voor continue werking als er problemen zijn met het onderliggende Azure-platform. In Azure kunt u met de verschillende zones en regio's oplossingen bouwen voor hoge beschikbaarheid:
Beschikbaarheidszones zijn foutisolatieconstructies in Azure datacenterontwerp. Elke zone heeft een eigen stroom, netwerk en koeling om de kans op storingen over zones te minimaliseren. Als u Beschikbaarheidszones wilt gebruiken, kan elke Azure resource worden geïmplementeerd in een specifieke zone (zonegebonden) of op alle zones (zone-redundant).
Oplossingen voor meerdere regio's bieden het hoogste niveau van foutisolatie en de hoogste betrouwbaarheid, maar zijn vaak moeilijker te implementeren vanwege de hogere latentie tussen de geografische regio's. Deze latentie kan vertragingen met gegevensreplicatie veroorzaken. Zie de Azure Bedrijfskritieke documentatie voor meer informatie over het ontwerpen van meerdere regio's.
Overweeg het gebruik van Azure DevOps en GitHub om geautomatiseerde manieren te bieden voor het beheren van ontwikkelings-, build- en implementatieprocessen.
Aanbevelingen
Isoleren per omgeving: Creëer afzonderlijke omgevingen voor Container Apps voor volledige isolatie van bronnen. Vermijd het gebruik van revisies om tenantspecifieke container-apps te maken. Zie Azure Container Apps in multitenant-oplossing voor meer informatie.
Gebruik limieten voor rekenresources: gebruik limieten voorcpu- en geheugenresources voor containers om de reken- en geheugenresources binnen een omgeving te beheren. Standaardlimieten voor containers zijn respectievelijk 2 vCPU's en 4 GiB voor rekenkracht en geheugen.
Gebruik statustests: Voeg statustests toe aan uw container-apps. Zorg ervoor dat revisies
livenessProbe,readinessProbe, enstartupProbebevatten. Zie Azure Container Apps gezondheidsonderzoeken voor meer informatie.Correct instellen van gezondheidstests: de gezondheidstest is verantwoordelijk voor het maken van aanroepen naar een endpoint en verwacht dat er een statuscode voor een geslaagde status wordt ontvangen, meestal in het HTTP 2xx-bereik, wanneer het systeem in een gezonde toestand verkeert. Het wordt aanbevolen dat dit eindpunt niet alleen controles uitvoert op de status van het systeem, maar ook op de status van kritieke downstreamonderdelen, zoals databases, opslag en berichtenservices. Als u een continue cascade van statuscontroles wilt voorkomen, is het belangrijk om de caching van downstream-statusreacties voor korte tijd te implementeren.
Uitgebreid loggen: Maak Log Analytics queries om te zoeken naar waarschuwingen, fouten en kritieke berichten.
Toepassingslogboeken worden gegenereerd door de console-uitvoer van containers (
stdout/stderr) berichten. Wanneer Dapr is ingeschakeld, bevat console-uitvoer zowel toepassingscontainer- als Dapr-sidecar-berichten. Bekijk logboekbewaking voor meer informatie over het uitvoeren van query's op logboeken met behulp van Log Analytics.System-logboeken worden gegenereerd door Azure Container Apps.
Enable visual tracing: Wanneer u Dapr inschakelt, configureert u de 'DaprAIInstrumentationKey' op het niveau van de ACA-omgeving om gedistribueerde tracering van container-apps te visualiseren in de Azure-toepassing Insights-toepassingstoewijzing.
Gebruik de Application Insights SDK: Het gebruik van de Application Insights SDK voor toepassingsgegevens als agent voor automatische instrumentatie wordt nog niet ondersteund.
Gebruik availability zones: Gebruik Beschikbaarheidszones voor alle resources wanneer u hoge beschikbaarheid nodig hebt. Zorg ervoor dat niet alleen uw Container Apps zone-redundant zijn, maar ook aangrenzende services die nodig zijn om aan aanvragen te voldoen, zoals databases, opslag- en berichtenservices.
Gedistribueerde replicatie: Zorg ervoor dat uw toepassingsgegevens en broncode beschikbaar zijn in meer dan één Azure regio voor herstel na noodgevallen. Azure Storage-accounts bieden bijvoorbeeld geografisch gerepliceerde opslag en Azure SQL Databases ondersteunen het plaatsen van leesreplica's in andere regio's.
Automate-builds: End-to-end-automatisering gebruiken om uw Azure Container Apps-toepassingen te bouwen en te implementeren.
Gebruik een containerregister: Sla uw containerinstallatiekopieën op in Azure Container Registry en repliceer het register naar elke ACA-regio.
Test uw plan voor herstel na noodgevallen: maak en test regelmatig een noodherstelplan met behulp van belangrijke foutscenario's. Zie Back-up en herstel na noodgevallen testen voor meer informatie.