Betrouwbaarheidspatronen

Beschikbaarheid

Beschikbaarheid wordt gemeten als een percentage van de uptime en definieert de hoeveelheid tijd dat een systeem functioneel en werkend is. Beschikbaarheid wordt beïnvloed door systeemfouten, infrastructuurproblemen, schadelijke aanvallen en systeembelasting. Cloudtoepassingen bieden gebruikers doorgaans een SLA (Service Level Agreement), wat betekent dat toepassingen moeten worden ontworpen en geïmplementeerd om de beschikbaarheid te maximaliseren.

Patroon Samenvatting
Implementatiestempels Implementeer meerdere onafhankelijke kopieën van toepassingsonderdelen, waaronder gegevensarchieven.
Geodes Back-endservices implementeren in een set geografische knooppunten, die elk clientaanvragen in elke regio kunnen afhandelen.
Eindpuntstatusbewaking Functionele controles implementeren in een toepassing die externe hulpprogramma's met regelmatige intervallen kunnen benaderen via beschikbaar gestelde eindpunten.
Load Leveling op basis van wachtrij Gebruik een wachtrij die fungeert als een buffer tussen een taak en een service die deze aanroept, om onregelmatige zware belastingen soepel te laten verlopen.
Beperking Het verbruik van resources beheren door een exemplaar van een toepassing, een afzonderlijke tenant of een hele service.

Als u de beschikbaarheidsrisico's van schadelijke DDoS-aanvallen (Distributed Denial of Service) wilt beperken, implementeert u de standaardservice van Azure DDoS-beveiliging of een functie van derden.

Hoge beschikbaarheid

De Azure-infrastructuur bestaat uit geografische gebieden, regio's en Beschikbaarheidszones, waardoor de radius van een storing wordt beperkt en potentiële gevolgen voor toepassingen en gegevens van klanten worden beperkt. De Azure Beschikbaarheidszones is ontwikkeld om een software- en netwerkoplossing te bieden ter bescherming tegen storingen in datacenters en om onze klanten een hogere beschikbaarheid (HA) te bieden. Met ha-architectuur is er een balans tussen hoge tolerantie, lage latentie en kosten.

Patroon Samenvatting
Implementatiestempels Implementeer meerdere onafhankelijke kopieën van toepassingsonderdelen, waaronder gegevensarchieven.
Geodes Back-endservices implementeren in een set geografische knooppunten, die elk clientaanvragen in elke regio kunnen afhandelen.
Eindpuntstatusbewaking Functionele controles implementeren in een toepassing die externe hulpprogramma's met regelmatige intervallen kunnen benaderen via beschikbaar gestelde eindpunten.
Bulkhead Elementen van een toepassing in groepen isoleren zodat bij uitval van het ene element het andere element blijft functioneren.
Circuitonderbreker Fouten afhandelen waarvoor een wisselende hoeveelheid tijd nodig is om ze op te lossen bij het verbinden met een externe service of resource.

Flexibiliteit

Tolerantie is het vermogen van een systeem om fouten op een goede manier te verwerken en te herstellen, zowel onbedoeld als kwaadwillend.

De aard van hosting in de cloud, waarbij toepassingen vaak meerdere tenants hebben, gedeelde platformservices gebruiken, concurreren om resources en bandbreedte, communiceren via internet en worden uitgevoerd op doorsnee hardware, betekent dat er een grotere kans is op zowel tijdelijke als meer permanente fouten. De verbonden aard van internet en de toename van verfijning en het volume van aanvallen verhogen de kans op een beveiligingsonderbreking.

Het detecteren van fouten en het snel en efficiënt herstellen van fouten is nodig om tolerantie te behouden.

Patroon Samenvatting
Bulkhead Elementen van een toepassing in groepen isoleren zodat bij uitval van het ene element het andere element blijft functioneren.
Circuitonderbreker Fouten afhandelen waarvoor een wisselende hoeveelheid tijd nodig is om ze op te lossen bij het verbinden met een externe service of resource.
Compenserende transactie Werk ongedaan maken dat is uitgevoerd door een reeks stappen, die samen een uiteindelijk consistent bewerking definiëren.
Eindpuntstatusbewaking Functionele controles implementeren in een toepassing die externe hulpprogramma's met regelmatige intervallen kunnen benaderen via beschikbaar gestelde eindpunten.
Selectie van leider De acties coördineren die worden uitgevoerd door een reeks samenwerkende taakexemplaren in een gedistribueerde toepassing door één exemplaar te selecteren als de leider, die vervolgens de verantwoordelijkheid krijgt voor het beheren van de andere exemplaren.
Load Leveling op basis van wachtrij Een wachtrij gebruiken die fungeert als een buffer tussen een taak en een service die wordt aangeroepen om onregelmatige zware belastingen soepel te verwerken.
Opnieuw proberen Een toepassing de mogelijkheid bieden voor het afhandelen van verwachte, tijdelijke fouten als er wordt geprobeerd om verbinding te maken met een service of netwerkresource door een bewerking die eerder is mislukt, transparant opnieuw te proberen.
Scheduler Agent Supervisor Een set acties coördineren binnen een gedistribueerde set services en andere externe resources.