Padrões de confiabilidadeReliability patterns

DisponibilidadeAvailability

A disponibilidade é medida como um percentual do tempo de atividade e define a proporção de tempo em que um sistema está funcional e funcionando.Availability is measured as a percentage of uptime, and defines the proportion of time that a system is functional and working. A disponibilidade é afetada por erros do sistema, problemas de infraestrutura, ataques mal-intencionados e carga do sistema.Availability is affected by system errors, infrastructure problems, malicious attacks, and system load. Os aplicativos de nuvem normalmente fornecem aos usuários um SLA (contrato de nível de serviço), o que significa que os aplicativos devem ser projetados e implementados para maximizar a disponibilidade.Cloud applications typically provide users with a service level agreement (SLA), which means that applications must be designed and implemented to maximize availability.

PadrãoPattern ResumoSummary
Carimbos de implantaçãoDeployment Stamps Implante várias cópias independentes de componentes de aplicativos, incluindo armazenamentos de dados.Deploy multiple independent copies of application components, including data stores.
Nó geográficoGeodes Implante serviços de back-end em um conjunto de nós geográficos. Cada um deles pode atender solicitações de cliente em qualquer região.Deploy backend services into a set of geographical nodes, each of which can service any client request in any region.
Monitoramento do Ponto de Extremidade de IntegridadeHealth Endpoint Monitoring Implemente verificações funcionais dentro de um aplicativo cujas ferramentas externas podem acessar por meio de pontos de extremidade expostos em intervalos regulares.Implement functional checks in an application that external tools can access through exposed endpoints at regular intervals.
Nivelamento de Carga Baseado em FilaQueue-Based Load Leveling Use uma fila que atue como um buffer entre uma tarefa e um serviço que ele invoca, para suavizar cargas pesadas intermitentes.Use a queue that acts as a buffer between a task and a service that it invokes, to smooth intermittent heavy loads.
LimitaçãoThrottling Controle o consumo de recursos por uma instância de um aplicativo, um locatário individual ou um serviço inteiro.Control the consumption of resources by an instance of an application, an individual tenant, or an entire service.

Para reduzir os riscos de disponibilidade de ataques DDoS (negação de serviço distribuído) mal-intencionados, implemente o serviço padrão de proteção contra DDoS do Azure nativo ou um recurso de terceiros.To mitigate against availability risks from malicious Distributed Denial of Service (DDoS) attacks, implement the native Azure DDoS protection standard service or a third party capability.

Alta disponibilidadeHigh availability

A infraestrutura do Azure é composta por geografias, regiões e Zonas de Disponibilidade, que limitam o raio de uma falha e, portanto, limitam o impacto potencial aos dados e aplicativos do cliente.Azure infrastructure is composed of geographies, regions, and Availability Zones, which limit the blast radius of a failure and therefore limit potential impact to customer applications and data. O Zonas de Disponibilidade do Azure Construct foi desenvolvido para fornecer uma solução de software e rede para proteger contra falhas de datacenter e fornecer alta disponibilidade (HA) maior para nossos clientes.The Azure Availability Zones construct was developed to provide a software and networking solution to protect against datacenter failures and to provide increased high availability (HA) to our customers. Com a arquitetura de alta disponibilidade, há um equilíbrio entre alta resiliência, baixa latência e custo.With HA architecture there is a balance between high resilience, low latency, and cost.

PadrãoPattern ResumoSummary
Carimbos de implantaçãoDeployment Stamps Implante várias cópias independentes de componentes de aplicativos, incluindo armazenamentos de dados.Deploy multiple independent copies of application components, including data stores.
Nó geográficoGeodes Implante serviços de back-end em um conjunto de nós geográficos. Cada um deles pode atender solicitações de cliente em qualquer região.Deploy backend services into a set of geographical nodes, each of which can service any client request in any region.
Monitoramento do Ponto de Extremidade de IntegridadeHealth Endpoint Monitoring Implemente verificações funcionais dentro de um aplicativo cujas ferramentas externas podem acessar por meio de pontos de extremidade expostos em intervalos regulares.Implement functional checks in an application that external tools can access through exposed endpoints at regular intervals.
BulkheadBulkhead Isole os elementos de um aplicativo em pools para que, se um falhar, os outros continuem a funcionar.Isolate elements of an application into pools so that if one fails, the others will continue to function.
Interruptor de CircuitoCircuit Breaker Trate as falhas que possam consumir uma quantidade variável de tempo para serem corrigidas ao se conectar a um serviço ou recurso remoto.Handle faults that might take a variable amount of time to fix when connecting to a remote service or resource.

ResiliênciaResiliency

Resiliência é a capacidade de um sistema de tratar e recuperar normalmente de falhas, inadvertidamente e mal-intencionado.Resiliency is the ability of a system to gracefully handle and recover from failures, both inadvertent and malicious.

A natureza da hospedagem em nuvem, em que os aplicativos costumam ser multilocatário, usam serviços de plataforma compartilhada, competem por recursos e largura de banda, comunicam-se pela Internet e são executados no hardware de mercadoria significa que há uma maior probabilidade de que ocorram falhas tanto transitórias quanto mais permanentes.The nature of cloud hosting, where applications are often multi-tenant, use shared platform services, compete for resources and bandwidth, communicate over the Internet, and run on commodity hardware means there is an increased likelihood that both transient and more permanent faults will arise. A natureza conectada da Internet e o aumento na sofisticação e no volume de ataques aumentam a probabilidade de uma interrupção de segurança.The connected nature of the internet and the rise in sophistication and volume of attacks increase the likelihood of a security disruption.

Detectar falhas e recuperar de forma rápida e eficiente é necessário para manter a resiliência.Detecting failures and recovering quickly and efficiently, is necessary to maintain resiliency.

PadrãoPattern ResumoSummary
BulkheadBulkhead Isole os elementos de um aplicativo em pools para que, se um falhar, os outros continuem a funcionar.Isolate elements of an application into pools so that if one fails, the others will continue to function.
Interruptor de CircuitoCircuit Breaker Trate as falhas que possam consumir uma quantidade variável de tempo para serem corrigidas ao se conectar a um serviço ou recurso remoto.Handle faults that might take a variable amount of time to fix when connecting to a remote service or resource.
Transação de CompensaçãoCompensating Transaction Desfaça o trabalho executado por uma série de etapas que, juntas, definem uma operação que acabe sendo consistente.Undo the work performed by a series of steps, which together define an eventually consistent operation.
Monitoramento do Ponto de Extremidade de IntegridadeHealth Endpoint Monitoring Implemente verificações funcionais dentro de um aplicativo cujas ferramentas externas podem acessar por meio de pontos de extremidade expostos em intervalos regulares.Implement functional checks in an application that external tools can access through exposed endpoints at regular intervals.
Eleição de LíderLeader Election Coordene as ações executadas por uma coleção de instâncias de tarefa de colaboração em um aplicativo distribuído elegendo uma instância como a líder que assume a responsabilidade por gerenciar as demais instâncias.Coordinate the actions performed by a collection of collaborating task instances in a distributed application by electing one instance as the leader that assumes responsibility for managing the other instances.
Nivelamento de Carga Baseado em FilaQueue-Based Load Leveling Use uma fila que funcione como um buffer entre uma tarefa e um serviço que ela invoca para simplificar cargas pesadas intermitentes.Use a queue that acts as a buffer between a task and a service that it invokes in order to smooth intermittent heavy loads.
Tentar NovamenteRetry Permita que um aplicativo trate falhas previstas e temporárias quando tentar se conectar a um serviço ou recurso de rede ao repetir de forma transparente uma operação que falhou anteriormente.Enable an application to handle anticipated, temporary failures when it tries to connect to a service or network resource by transparently retrying an operation that's previously failed.
Supervisor de Agente do AgendadorScheduler Agent Supervisor Coordene um conjunto de ações em um conjunto distribuído de serviços e outros recursos remotos.Coordinate a set of actions across a distributed set of services and other remote resources.