Digibee Documentation
Solicitar documentaçãoAgendar demo
Português
Português
  • Primeiros passos
  • Destaques
    • Release notes
      • Release notes 2025
        • Maio
        • Abril
        • Março
        • Fevereiro
        • Janeiro
      • Release notes 2024
        • Dezembro
        • Novembro
        • Outubro
        • Setembro
        • Agosto
          • Lançamento de conectores 20/08/2024
        • Julho
        • Junho
        • Maio
        • Abril
        • Março
        • Fevereiro
        • Janeiro
      • Release notes 2023
        • Dezembro
        • Novembro
        • Outubro
        • Setembro
        • Agosto
        • Julho
        • Junho
        • Maio
        • Abril
        • Março
        • Fevereiro
        • Janeiro
      • Release notes 2022
        • Dezembro
        • Novembro
        • Outubro
        • Setembro
        • Agosto
        • Julho
        • Junho
        • Maio
        • Abril
        • Março
        • Fevereiro
        • Janeiro
      • Release notes 2021
      • Release notes 2020
    • AI Pair Programmer
    • Digibeectl
      • Comece a usar
        • Como instalar o Digibeectl no Windows
      • Digibeectl sintaxe
      • Operações do Digibeectl
  • Digibee em ação
    • Casos Práticos de Uso
      • Melhorando o desempenho de integrações com paginação de API
      • Automatize o armazenamento de arquivos com a Digibee
      • Estratégia de reprocessamento em integrações orientadas a eventos
      • Práticas essenciais para proteger informações sensíveis em pipelines com a Digibee
      • OAuth2 para acesso seguro a APIs
      • Proteja suas APIs com JWT na Digibee
      • Melhores práticas de integração para desenvolvedores na Digibee Integration Platform
      • Como usar Arquitetura orientada a eventos na Digibee Integration Platform
      • Download dinâmico de arquivos com a Digibee
      • Microsserviços: Padrão Circuit Breaker para melhorar a resiliência
      • Estratégia de tratamento de erros em integrações orientadas a eventos
    • Solução de problemas
      • Orientações para integrações
        • Como resolver problemas comuns em pipelines
        • Como resolver o Erro 409: “You cannot update a pipeline that is not on draft mode”
        • Como resolver o erro "Pipeline execution was aborted"
        • Autenticação integrada com o Microsoft Entra ID
        • Como resolver o erro "Failed to initialize pool: ONS configuration failed"
        • Como executar o mapeamento de endereços IP com o banco de dados Progress
        • Como construir fluxos de integração que enviam notificações de erro
        • Como enviar logs de pipeline para sistemas externos de monitoramento
        • Como o JSONPath difere nos conectores e no Painel de execução
        • Usando JSONPath para validar números com dígitos iniciais específicos
        • Como analisar o erro “Network error: Failed to fetch” no Painel de execução
        • Como trabalhar com requisições de payloads superiores a 5MB
        • Como configurar o Microsoft Entra ID para exibir grupos na Digibee Integration Platform
        • Como montar uma mensagem HL7
      • Comportamento e configuração de conectores
        • Timeout no conector Pipeline Executor
        • Como usar DISTINCT e COUNT no Object Store
        • Entendendo o @@DGB_TRUNCATED@@ na Digibee Integration Platform
        • Como resolver nomes sem DNS - REST, SOAP, SAP (web protocols)
        • Como ler e escrever arquivos dentro de pastas
        • AuthToken Reuse para conector Salesforce
        • Como resolver o erro "Invalid payload" na integração de API
        • Bancos de dados suportados
          • Funções e utilidades para banco de dados
      • Implementação e exemplos de uso de conectores
        • Google Storage: Cenários de uso
        • DB V2: Cenários de uso
        • For Each: Exemplo de uso
        • Template e suas utilizações
        • Implementação do Digibee JWT
        • Email V1: Exemplos de uso (Descontinuado)
      • Aplicações do JOLT
        • Transformer: Conhecendo o JOLT
        • Transformer: Transformações com JOLT
        • Transformer: Adicionar valores aos elementos da lista
        • Transformer: Visão geral das operations
        • Transformer: Formatação de datas utilizando split e concat
        • Transformer: Lógica IF-ELSE simples com JOLT
      • Dicas de acesso e desempenho da Plataforma
        • Como resolver problemas para fazer o login na Digibee Integration Platform
        • Como receber atualizações da Status Page da Digibee
        • Como executar a limpeza de cache da Digibee Integration Platform
      • Orientações sobre governança e solução de problemas
        • Como consumir pipelines com Internal API usando ZTNA
        • Como usar a API Interna com ou sem uma VPN
        • Como gerar, converter e cadastrar SSH Keys
        • Autenticação mTLS
          • Como configurar o mTLS na Digibee Integration Platform
          • Perguntas frequentes: Certificados no mTLS
        • Como conectar a Digibee ao Oracle RAC
        • Como conectar a Digibee à SAP
        • Como conectar a Digibee ao MongoDB Atlas usando VPN
        • Como gerenciar IPs na Digibee Integration Platform
        • Configurando Account Dropbox
        • Como usar sua conta do Gmail com o componente de e-mail Digibee (SMTP)
        • Como utilizar a política CORS na Digibee Integration Platform
      • Cenários de implantação
        • Como solucionar erros de “Out of memory” na implantação
        • Aviso de conflito de rotas
    • Boas práticas
      • JOLT e Double Braces na Digibee: Escolhendo o método certo para transformar dados
      • Boas práticas para a construção de um pipeline
      • Boas práticas ao validar mensagens em um pipeline consumer
      • Evitando loops e maximizando a eficiência dos pipelines
      • Nomenclatura: Global, Contas (Accounts) e Consumers (Chaves de API)
      • Tutorial de paginação
        • Tutorial de paginação - parte 1
        • Tutorial de paginação - parte 2
        • Tutorial de paginação - parte 3
        • Tutorial de paginação - parte 4
      • Exemplos de paginação
      • Arquitetura orientada a eventos
      • Modelo de notificação em integrações orientadas a eventos
      • Modelo de integração OAuth2 com a Digibee
      • Boas práticas para tratamento de erros em pipelines
      • Modelo ETL de alta escalabilidade para Digibee
    • Digibee Academy
      • Integration Developer Bootcamp
  • Guias de referência
    • Conectores
      • AI Tools
        • LLM Connector
      • AWS
        • S3 Storage
        • SQS
        • AWS Secrets Manager
        • AWS Athena
        • AWS CloudWatch
        • AWS Elastic Container Service (ECS)
        • AWS Eventbridge
        • AWS Identity and Access Management (IAM)
        • AWS Kinesis
        • AWS Kinesis Firehose
        • AWS Key Management Service (KMS)
        • AWS Lambda
        • AWS MQ
        • AWS Simple Email Service (SES)
        • AWS Simple Notification System (SNS)
        • AWS Security Token Service (STS)
        • AWS Translate
      • Azure
        • Azure CosmosDB
        • Azure Event Hubs
        • Azure Key Vault
        • Azure ServiceBus
        • Azure Storage Datalake Service
        • Azure Storage Queue Service
      • Enterprise applications
        • SAP
        • Salesforce
        • Braintree
        • Facebook
        • GitHub
        • Jira
        • ServiceNow
        • Slack
        • Telegram
        • Twillio
        • WhatsApp
        • Wordpress
        • Workday
        • Zendesk
      • File storage
        • Blob Storage (Azure)
        • Digibee Storage
        • Dropbox
        • FTP
        • Google Drive
        • Google Storage
        • OneDrive
        • SFTP
        • WebDav V2
        • WebDav (Descontinuado)
      • Files
        • Append Files
        • Avro File Reader
        • Avro File Writer
        • CSV to Excel
        • Excel
        • File Reader
        • File Writer
        • GZIP V2
        • GZIP V1 (Descontinuado)
        • Parquet File Reader
        • Parquet File Writer
        • Stream Avro File Reader
        • Stream Excel
        • Stream File Reader
        • Stream File Reader Pattern
        • Stream JSON File Reader
        • Stream Parquet File Reader
        • Stream XML File Reader
        • XML Schema Validator
        • ZIP File
        • NFS
      • Flow
        • Delayer
      • Google/GCP
        • Google BigQuery
        • Google BigQuery Standard SQL
        • Google Calendar
        • Google Cloud Functions
        • Google Mail
        • Google PubSub
        • Google Secret Manager
        • Google Sheets
      • Industry solutions
        • FHIR (Beta)
        • Gupy Public API
        • HL7
        • HubSpot: Sales e CMS
        • Mailgun API
        • Oracle NetSuite (Beta)
        • Orderful
        • Protheus: Billing e Inventory of Cost
      • Logic
        • Block Execution
        • Choice
        • Do While
        • For Each
        • Retry
        • Parallel Execution
      • Queues and messaging
        • Event Publisher
        • JMS
        • Kafka
        • RabbitMQ
      • Security
        • AES Cryptography
        • Asymmetric Cryptography
        • CMS
        • Digital Signature
        • JWT (Descontinuado)
        • JWT V2
        • Google IAP Token
        • Hash
        • Digibee JWT (Generate and Decode)
        • LDAP
        • PBE Cryptography
        • PGP
        • RSA Cryptography
        • Symmetric Cryptography
      • Structured data
        • CassandraDB
        • DB V2
        • DB V1 (Descontinuado)
        • DynamoDB
        • Google Big Table
        • Memcached
        • MongoDB
        • Object Store
        • Relationship
        • Session Management
        • Stored Procedure
        • Stream DB V3
        • Stream DB V1 (Descontinuado)
        • ArangoDb
        • Caffeine Cache
        • Caffeine LoadCache
        • Couchbase
        • CouchDB
        • Ehcache
        • InfluxDB
      • Tools
        • Assert V2
        • Assert V1 (Descontinuado)
        • Base64
        • CSV to JSON V2
        • CSV to JSON V1 (Descontinuado)
        • HL7 Message Transformer (Beta)
        • HTML to PDF
        • Transformer (JOLT) V2
        • JSLT
        • JSON String to JSON Transformer
        • JSON to JSON String Transformer
        • JSON to XML Transformer
        • JSON to CSV V2
        • JSON to CSV Transformer (Descontinuado)
        • JSON Path Transformer V2
        • JSON Path Transformer
        • JSON Transformer
        • Log
        • Pipeline Executor
        • QuickFix (Beta)
        • SSH Remote Command
        • Script (JavaScript)
        • Secure PDF
        • Store Account
        • Template Transformer
        • Throw Error
        • Transformer (JOLT)
        • Validator V1 (Descontinuado)
        • Validator V2
        • XML to JSON Transformer
        • XML Transformer
        • JSON Generator (Mock)
      • Web protocols
        • Email V2
        • Email V1 (Descontinuado)
        • REST V2
        • REST V1 (Descontinuado)
        • SOAP V3
        • SOAP V2
        • SOAP V1 (Descontinuado)
        • WGet (Download HTTP)
        • gRPC
    • Triggers
      • Web Protocols
        • API Trigger
        • Email Trigger
        • Email Trigger V2
        • HTTP Trigger
        • HTTP File Trigger
          • HTTP File Trigger - Downloads
          • HTTP File Trigger - Uploads
        • REST Trigger
      • Scheduling
        • Scheduler Trigger
      • Messaging and Events
        • Event Trigger
        • JMS Trigger
        • Kafka Trigger
        • RabbitMQ Trigger
      • Others
        • DynamoDB Streams Trigger
        • HL7 Trigger
        • Salesforce Trigger - Events
    • Double Braces
      • Como referenciar dados usando Double Braces
      • Funções Double Braces
        • Funções matemáticas
        • Funções de utilidades
        • Funções numéricas
        • Funções de string
        • Funções de JSON
        • Funções de data
        • Funções de comparação
        • Funções de arquivo
        • Funções de condição
      • Preenchimento automático de expressões Double Braces
  • Ciclo de desenvolvimento
    • Build
      • Canvas
        • Assistente de IA
        • Smart Connector User Experience
        • Painel de execução
        • Modos de Design e Inspeção
        • Linter: Validação de construção do canvas
        • Mock de Conectores
      • Pipeline
        • Como criar um pipeline
        • Como criar um pipeline usando uma especificação OpenAPI
        • Como criar um projeto
        • Histórico de versões do pipeline
        • Versionamento de pipelines
        • Processamento de mensagens
        • Subpipelines
      • Cápsulas
        • Como usar Cápsulas
          • Como criar uma coleção de Cápsulas
            • Dimensões do cabeçalho da Cápsula
          • Como criar um grupo de Cápsulas
          • Como configurar uma Cápsula
          • Como construir uma Cápsula
          • Como testar uma Cápsula
          • Como salvar uma Cápsula
          • Como publicar uma Cápsula
          • Como mudar uma Cápsula de coleção ou grupo
          • Como arquivar e restaurar uma Cápsula
        • Versionamento de Cápsulas
        • Cápsulas públicas
          • SAP
          • Digibee Tools
          • Google Sheets
          • Gupy
          • Enviar alerta por email
          • Totvs Live
          • Canvas LMS
        • Assistente de IA para geração de documentação de cápsulas
    • Run
      • Conceitos de Run
        • Autoscalling
      • Implantação
        • Implantando um pipeline
        • Como reimplantar um pipeline
        • Como promover pipelines entre ambientes
        • Como verificar o Histórico de implantação do pipeline
        • Como fazer rollback de versão implantada
        • Como utilizar as funções avançadas do histórico de implantação
        • Status de implantação do pipeline
      • Como os alertas funcionam nos pipelines em Run
    • Monitor
      • Monitor Insights (Beta)
      • Execuções concluídas
        • Download dos logs de execução de pipeline
      • Pipeline logs
      • Pipeline Metrics
        • API de métricas de pipeline
          • Como configurar API de métricas Digibee com Datadog
          • Como configurar API de métricas Digibee com Prometheus
        • Latência de Conector
      • Alertas
        • Como criar um alerta
        • Como editar um alerta
        • Como ativar, desativar ou duplicar um alerta
        • Como excluir um alerta
        • Como configurar alertas no Slack
        • Como configurar alertas no Telegram
        • Como configurar alertas via webhook
        • Métricas disponíveis
        • Boas práticas para alertas
        • Casos de uso para alertas
      • Monitoramento de conexões de VPN
        • Alertas para métricas de VPN
  • Gerenciamento de conectividade
    • Conectividade
    • Zero Trust Network Access (ZTNA)
      • Pré-requisitos para usar o ZTNA
      • Como visualizar conexões (Edge Routers)
      • Como visualizar Network Mappings associados com um Edge Router
      • Como adicionar novas conexões em ZTNA (Edge Routers)
      • Como deletar conexões em ZTNA (Edge Routers)
      • Como visualizar rotas (Network mapping)
      • Como adicionar novas rotas (Network Mapping)
      • Como adicionar rotas em lote para ZTNA
      • Como editar rotas (Network Mapping)
      • Como deletar rotas (Network Mapping)
      • Como gerar novas chaves (Edge Router)
      • Como mudar o ambiente dos Edge Routers
      • Fluxo Inverso (Inverse Flow) de ZTNA
      • Grupos de ZTNA
    • Virtual Private Network (VPN)
  • Administração da plataforma
    • Administração
      • Auditoria
      • Controle de acesso
        • Usuários
        • Grupos
        • Papéis
          • Lista de permissões por serviço
          • Papéis e responsabilidades: Governança e identificação de pessoas-chave
      • Integração com provedores de identidades
        • Como integrar um provedor de identidade
        • Regras de autenticação
        • Integração de grupos IdP com grupos Digibee
          • Como criar uma integração de grupo
          • Como testar uma integração de grupo
          • Como habilitar uma integração de grupo
          • Como editar uma integração de grupo
          • Como remover uma integração de grupo
      • Autenticação e autorização de usuários
        • Como habilitar e desabilitar a autenticação de dois fatores
        • Fluxo de login
      • Grupos da organização
    • Configurações
      • Globals
        • Como criar Globals
        • Como editar ou excluir Globals
        • Como usar Globals
      • Contas (Accounts)
        • Configurando cada tipo de conta
        • Monitore alterações nas configurações da conta em pipelines implantados
        • Arquitetura OAuth2
          • Cadastro de novos provedores OAuth
      • Consumers (Chaves de API)
      • Modelos de Relacionamento
      • Multi-Instância
        • Implantando um pipeline de multi-instância
      • Transmissão de dados
        • Como usar a Transmissão de dados com o Datadog
    • Governança
      • Políticas
        • Segurança
          • Política de acesso à APIs internas
          • Política de acesso à APIs externas
          • Política de campos sensíveis
        • Transformação
          • Cabeçalho HTTP personalizado
          • Cabeçalho HTTP CORS
        • Política de Limite de réplicas
    • Licenciamento
      • Modelos de licenciamento
        • Modelo baseado em consumo
      • Capacidade e cotas
      • Consumo de licenças
    • Digibee APIs
      • Como criar credenciais de API
  • Conceitos da Digibee
    • Pipeline Engine
      • Digibee Integration Platform Pipeline Engine v2
      • Suporte a Credenciais Dinâmicas (Beta Restrito)
    • Introdução ao ZTNA
  • Ajuda & FAQ
    • Suporte ao Cliente Digibee
    • Solicitar documentação, sugerir nova feature ou enviar feedback
    • Programa Beta
    • Segurança e conformidade
    • Sobre a Digibee
Fornecido por GitBook
Nesta página
  • Por que os Circuit Breakers são importantes
  • Como funciona
  • Casos de Uso
  • Cenário 1: Sistema de reserva de voos
  • Cenário 2: Processamento de pedidos de e-commerce
  • Colocando a teoria em prática
  • Passo a passo
  • Considerações finais

Isto foi útil?

  1. Digibee em ação
  2. Casos Práticos de Uso

Microsserviços: Padrão Circuit Breaker para melhorar a resiliência

AnteriorDownload dinâmico de arquivos com a DigibeePróximoEstratégia de tratamento de erros em integrações orientadas a eventos

Atualizado há 3 meses

Isto foi útil?

A arquitetura de microsserviços distribui aplicações em vários serviços, introduzindo desafios em suas interações. Falhas — sejam devido a problemas de rede, falhas em contêineres ou sobrecarga de serviços — são inevitáveis e podem interromper cadeias inteiras de operações. O padrão Circuit Breaker aborda esses desafios isolando serviços com falhas para evitar erros em cascata, garantindo que outros serviços permaneçam operacionais.

Este caso de uso demonstra como a implementação desse padrão pode aumentar a resiliência e minimizar interrupções em suas integrações. Ao final deste artigo, você aprenderá como a Digibee pode ajudá-lo a implementar o padrão Circuit Breaker, garantindo que seus sistemas permaneçam resilientes diante de falhas.

Por que os Circuit Breakers são importantes

Um Circuit Breaker é um padrão de design que ajuda a gerenciar falhas de forma elegante.

Assim como um disjuntor elétrico evita danos interrompendo o fluxo de energia quando ocorre uma sobrecarga, um circuit breaker de software interrompe temporariamente as solicitações a um serviço quando detecta falhas repetidas.

Para as empresas, essa abordagem é inestimável. Ao prevenir falhas em cascata, o Circuit Breaker dá aos sistemas o tempo necessário para se recuperarem sem sobrecarregar os recursos. Isso resulta em uma experiência do usuário mais estável e reduz o risco de perda de receita devido a períodos de inatividade.

Como funciona

Um Circuit Breaker monitora as taxas de sucesso e falha das solicitações a um serviço e alterna entre três estados:

  • Circuito fechado (closed): Todas as solicitações passam, assumindo que o serviço está saudável.

  • Circuito aberto (open): As solicitações são bloqueadas após as falhas excederem um * predefinido, evitando mais pressão sobre o serviço com falha.

  • Circuito semiaberto (half-open): Um número limitado de solicitações de teste é permitido para verificar se o serviço se recuperou.

Ao usar um Circuit Breaker, você pode:

  • Evitar a sobrecarga de serviços com falha, interrompendo solicitações desnecessárias.

  • Fornecer respostas de * para minimizar o impacto no usuário.

  • Dar ao serviço com falha um tempo para se recuperar antes de tentar reconectar.

Casos de Uso

Abaixo estão cenários onde os circuit breakers melhoram significativamente a confiabilidade do sistema:

Cenário 1: Sistema de reserva de voos

Em um sistema de reserva de voos, o Serviço de Reserva depende do Serviço de Informações de Voos para obter dados de voos disponíveis. Se o Serviço de Informações de Voos ficar inativo ou tiver tempos de resposta lentos, o Serviço de Reserva pode se tornar não-responsivo.

Processo de backend

  1. O Serviço de Reserva envia solicitações ao Serviço de Informações de Voos.

  2. Se o serviço falhar repetidamente, o Circuit Breaker abre, impedindo novas solicitações ao serviço com falha.

  3. O Serviço de Reserva retorna uma resposta de fallback ou informa ao usuário que o serviço está indisponível.

Cenário 2: Processamento de pedidos de e-commerce

Uma plataforma de e-commerce depende de vários microsserviços. Se o Serviço de Pagamento estiver com problemas, o Serviço de Pedidos pode usar um circuit breaker para evitar que novas solicitações de pagamento sejam enviadas até que o serviço se recupere.

Processo de backend

  1. O Serviço de Pedidos envia solicitações de pagamento ao Serviço de Pagamento.

  2. Se o Serviço de Pagamento encontrar falhas, o Circuit Breaker abre, e o Serviço de Pedidos responde com uma mensagem de erro temporária ou usa um método de fallback para concluir o pedido.

Colocando a teoria em prática

Imagine um pipeline projetado para se integrar a serviços externos, como uma API de Serviço de Endereços, para validar endereços com base no código postal inserido durante o registro do usuário. O pipeline deve atender aos seguintes requisitos:

  • Buscar detalhes completos do endereço via serviço externo.

  • Usar um Circuit Breaker para lidar com falhas do servidor, evitando tentativas excessivas.

Para este caso de uso, o foco será na implementação do Circuit Breaker, e não no pipeline em si.

Passo a passo

1. Configuração do pipeline

2. Armazenamento do código postal

3. Verificação do status do Circuit Breaker

    • Se fechado, o fluxo prossegue com as operações normais do pipeline.

    • Se não fechado (indicando que falhas recentes excederam o limite), ele bloqueia novas solicitações para evitar falhas em cascata.

4. Tratamento de circuito fechado (Block Execution - onProcess)

  • Se o circuito estiver fechado e uma chamada à API do Serviço de Endereços for feita, a resposta é processada e retornada ao usuário.

  • Se ocorrer um erro (indisponibilidade do serviço, etc.), o pipeline é direcionado para o subfluxo onException para lidar com a falha.

5. Tratamento de circuito fechado (Block Execution - onException)

    • Se o limite de falhas não for excedido, a contagem de falhas é incrementada em 1.

    • Se o limite de falhas for excedido (por exemplo, 15 falhas), o Circuit Breaker é acionado, e o status é atualizado para aberto para evitar novas solicitações ao serviço com falha. Assim, na próxima solicitação, o fluxo será redirecionado para o caminho do circuito "aberto", onde o pipeline bloqueará novas tentativas de interação com o serviço de endereço até que o circuito seja fechado novamente.

6. Abertura do Circuit Breaker

7. Sucesso ou Falha após tempo decorrido

  • Se o circuito estiver aberto por mais de X minutos, o circuito é fechado (redefinido) e, durante a próxima execução do pipeline, o Circuit Breaker tentará reabrir enviando uma nova solicitação ao serviço.

Considerações finais

O padrão Circuit Breaker é uma consideração importante ao usar uma arquitetura de microsserviços. Essa abordagem ajuda as integrações a manter a disponibilidade e a resiliência.

Configure um trigger com o método POST para receber dados do usuário (código postal).

Salve os dados na memória de execução () e recupere-os antes de chamar a API de Endereços.

A próxima etapa consulta o status do Circuit Breaker em um banco de dados temporário (como um ). Especificamente, verifica se o Circuit Breaker está aberto ou fechado.

A contagem de falhas é rastreada em um (ou qualquer outro banco de dados temporário).

Um conector calcula o tempo desde que o circuito foi aberto em relação ao timestamp atual da execução. Se exceder X minutos, o circuito é redefinido para fechado, permitindo novas solicitações.

Para acessar um exemplo do padrão Circuit Breaker revisado usado neste caso de uso, para ser redirecionado ao desafio do Circuit Breaker na Digibee Academy e procure a folha de respostas lá.

Explore mais possibilidades em nosso , participe do Desafio do Circuit Breaker ou inscreva-se no curso e webinar de Métricas e Monitoramento no . Além disso, visite nosso para mais casos de uso e insights.

Se tiver feedback sobre este caso de uso ou sugestões para futuros artigos, adoraríamos ouvir sua opinião através do nosso

REST
Session Management
Object Store
Object Store
JSON Generator
clique aqui
Portal de Documentação
Digibee Academy
Blog
formulário de feedback
Implementação do circuit breaker para cada serviço externo em um sistema distribuído.
Representação simplificada de um fluxo de circuit breaker: ilustrando como as solicitações a uma API de Serviço de Endereços são gerenciadas durante operação normal, cenários de falha e recuperação do circuit breaker.
Na captura de tela acima, você pode ver o padrão Circuit Breaker implementado no pipeline.