[데사피오] - 회로 차단기

2996 단어
Conteúdo 오리지널 .

Ei dev, você que quer impressionar seu crush no próximo date sem ficar falando só de CRUD? 클라로, 아니?!

Então aceite esse desafio técnico pra aprender NA PRÁTICA o que é e como funciona um CIRCUIT BREAKER!

Date Sucesso com Circuit Breaker


Circuit Breaker é um padrão usado pra proteger um recurso (API, serviço, qualquer componente) que não esteja funcionando bem.

Uma boa reference pra entender melhor tá aqui: https://martinfowler.com/bliki/CircuitBreaker.html

Vou me basear nesse post aí do Martin Fowler pro desafio.

Circuit Breaker


데사피오:

Crie duas APIs que funcionem mais ou menos como esse desenho. Sério, faça do seu jeito – fica mais legal!

Desafio


Para a API 02: Faça com que ela falhe algumas vezes consecutivamente. 예를 들면:

falhar = (agora.segundos  >= 0 and agora.segundos <= 15)

if (falhar)
  retorna erro;


Aí ela vai falhar por 15 segundos consecutivos a cada minuto.


아고라 오 비초 페가! Para a API 01: 회로 차단기를 구현합니다. Você precisa definir um limiar (fala "threshold"pra impressionar o crush, tá?). 예를 들어 "se falhar 5x consecutivas, eu abro o circuito (desarmar)". Você terá que usar um contador de erros.


Você também precisa implementar algo que faça com que o circuito seja fechado novamente(volte a funcionar). 예를 들어 시간을 사용할 수 있습니다.
Algo como: "ah, já tem 10 segs que esse troço tá desarmado, deixa eu armar novamente e ver se funciona".


API 01의 기본 정의는 정보를 제공하지 않는 것입니다.

음 오류 HTTP 4XX, 음 5XX, 음 2XX!?

Tem que terminar o date com essa treta resolvida, tá?


Circuit Breaker는 재귀 보호 프로그램이 아니므로 오류가 발생하지 않습니까? É comum desarmar o circuito quando o tempo de resposta começa a ficar alto também, por exemplo.


스레드 원본 foi inspirada da

좋은 웹페이지 즐겨찾기