Pergunta de entrevista para Engenheiro de Confiabilidade de Sites

Explique o padrão circuit breaker e me diga quando ele faz mais mal do que bem.

O que o entrevistador está avaliando, como estruturar sua resposta e um exemplo falado que você pode adaptar.

Resposta rápida

Um circuit breaker acompanha as falhas de uma dependência, abre assim que um limiar é cruzado para que as chamadas falhem rápido em vez de se acumular, e depois meio abre para testar a recuperação com um fio de tráfego. Ele protege pools de threads e de conexões contra esgotamento e barra falha em cascata. Ele atrapalha quando os limiares são apertados demais, quando o fallback é pior que o erro, ou quando toda instância abre ao mesmo tempo e a dependência nunca recebe tráfego suficiente para provar que se recuperou.

Por que os entrevistadores perguntam isso

Entrevistadores usam isso para ver se você trata padrões de resiliência como ferramentas com trade offs em vez de coisas que se liga. As respostas mais fortes cobrem o estado meio aberto, o isolamento por dependência (um breaker para o serviço inteiro é inútil), e o modo de falha honesto em que um breaker transforma uma dependência lenta numa queda dura de funcionalidade que teria funcionado.

Como estruturar sua resposta

  • Descreva os três estados e o que dispara cada transição.
  • Diga qual recurso o breaker está de fato protegendo.
  • Delimite breakers por dependência e por endpoint, não por processo.
  • Dê um caso concreto em que abrir o circuito foi a decisão errada.

Exemplo de resposta

Exemplo falado, em primeira pessoa

Fechado, aberto, meio aberto. Você conta falhas numa janela móvel, e assim que cruza o limiar abre o circuito e falha imediatamente por um período de descanso, e depois deixa algumas requisições de sondagem passarem para ver se a dependência está saudável de novo. O ponto real é proteger os seus próprios recursos. Se algo abaixo leva 30 segundos para dar timeout, toda thread de worker acaba estacionada nele e o seu serviço morre de algo que não era culpa sua. Onde dá errado é escopo e ajuste. A gente tinha um breaker no nível do serviço em vez de por dependência, então uma chamada instável de recomendações abriu o circuito para o checkout também, o que foi uma queda muito maior do que a que estávamos prevenindo. A outra armadilha é o fio de tráfego do meio aberto. Se toda réplica abre ao mesmo tempo e sonda raramente, a dependência vê quase nenhum tráfego e você fica no escuro muito mais tempo do que a falha real durou.

Vai encarar essa entrevista em breve? O GhostPilot escuta a sua chamada ao vivo, identifica a pergunta no instante em que ela é feita e coloca uma resposta estruturada na sua tela em tempo real. Teste na sua próxima entrevista simulada ou pegue um Session Pass de $29, sem assinatura, para a hora da verdade.

Veja como funciona

Perguntas de acompanhamento que você pode esperar

  • Como você escolheria o limiar de falha e o timeout de reset?
  • O que é bulkheading, e como ele complementa um circuit breaker?
  • O que o caminho de fallback deveria retornar quando o circuito está aberto?

Mais perguntas para Engenheiro de Confiabilidade de Sites

Seu entrevistador vai fazer a própria versão desta. Cole a descrição real da vaga no Question Predictor gratuito e receba as 20 perguntas que essa vaga tem mais chance de fazer, com o que cada uma está de fato sondando.

Prever minhas perguntas

Ensaie as perguntas difíceis antes que elas apareçam

Pratique com um copiloto ao vivo e depois entre pronto. Um Session Pass de $29 te leva até o fim da entrevista, sem assinatura e sem amarras.

Instalar o GhostPilot