Pular para o conteúdo principal

Questão de Arquitetura de Software — Arquitetura de Software — IMPARH 2024

Arquitetura de SoftwareArquitetura de Software
Código
qg257245
Banca
IMPARH
Órgão
Prefeitura de Fortaleza - CE
Ano
2024
Nível
Superior
Cargo
Analista de Regulação - Ciências da Computação
Qual é o padrão de software usado em microsserviços que evita falhas em cascata e interrompe chamadas subsequentes para evitar sobrecarga?
  1. ARetry.
  2. BStrangler.
  3. CCircuit Breaker.
  4. DBulkhead.
Revelar gabarito e comentário

GabaritoC — Circuit Breaker.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Arquitetura de Software: Padrão Circuit Breaker

Gabarito: letra C. O Circuit Breaker é o padrão de software utilizado em arquiteturas de microsserviços para evitar falhas em cascata e interromper chamadas subsequentes a um serviço que está apresentando falhas, prevenindo sobrecarga no sistema. Conhecido como "disjuntor", ele monitora as chamadas e, após um limiar de falhas, abre o circuito, impedindo novas tentativas por um período.

Padrões de resiliência em microsserviços
  • 1Circuit Breaker (disjuntor)
    • Monitora falhas
    • Abre o circuito após limiar
    • Interrompe chamadas subsequentes
    • Evita falhas em cascata
    • Testa recuperação após período
  • 2Retry
    • Repete chamada após falha
    • Pode agravar sobrecarga
  • 3Bulkhead
    • Isola recursos (threads/conexões)
    • Falha não se espalha
    • Não bloqueia chamadas
  • 4Strangler
    • Migração incremental de legado
    • Substituição gradual
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Retry. Este padrão consiste em repetir a chamada após uma falha, mas não interrompe as chamadas subsequentes; pelo contrário, pode agravar a sobrecarga se o serviço alvo já estiver sobrecarregado. Não atende ao objetivo de evitar falhas em cascata.

Alternativa B — ❌ Incorreta

Strangler. Padrão utilizado para migração incremental de sistemas legados, onde uma nova funcionalidade substitui gradualmente a antiga. Não tem relação com prevenção de falhas em cascata nem com interrupção de chamadas.

Alternativa C — ✅ Correta ⟵ GABARITO

Circuit Breaker. Exatamente o que a questão descreve: monitora falhas repetidas e, ao atingir um limite, interrompe as chamadas subsequentes para evitar sobrecarga e falhas em cascata. Após um tempo de espera, testa novamente o serviço e fecha o circuito se estiver saudável.

Alternativa D — ❌ Incorreta

Bulkhead. Padrão de isolamento que divide recursos (como threads ou conexões) em compartimentos para que uma falha em um componente não comprometa todo o sistema. Embora ajude na resiliência, não interrompe chamadas subsequentes — ele isola, não bloqueia chamadas.

PEGA ESSA DICA!

Em microsserviços, lembre-se: Circuit Breaker = "disjuntor" que para de chamar quando algo está errado; Bulkhead = "compartimentos estanques" para isolar falhas; Retry = tentar de novo; Strangler = migração gradual.

Gabarito: letra C.

Link permanente: /questoes/qg257245