Circuit Breaker - Padrão de Projeto para Microsserviços | Dias de Dev

Поделиться
HTML-код
  • Опубликовано: 24 янв 2025
  • НаукаНаука

Комментарии • 41

  • @aoli_lab
    @aoli_lab Месяц назад

    Já tive um problema com a Api dos correios. Derrubou muita gente kkkk resolvi reduzindo o time out para 5 segundos. Obrigado pela dica

  • @ItrioNetuno
    @ItrioNetuno 2 года назад

    Oi lindão! Passando aqui pra agradecer por ter feito parte do meu ano com os seus vídeos aqui e na Alura. E que venham muito mais em 2023!

    • @DiasDeDev
      @DiasDeDev  2 года назад +1

      Valeu demais pelo apoio!! 🤩🤩

  • @CaaJuniorBR
    @CaaJuniorBR 2 года назад +1

    Muito bom, Vinicius. Parabéns!!! Quero ver mais padrões de resiliência de microservices aqui no canal

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Pretendo trazer mais conteúdo sim. Inclusive, aceito dicas. :-D

  • @rotognin
    @rotognin 2 года назад

    Muito bacana! Show Vinicius

  • @Lucas-mu5no
    @Lucas-mu5no Год назад

    Vlw pelo vídeo. Ajudou bastante a entender o conceito.

    • @DiasDeDev
      @DiasDeDev  Год назад

      Fico feliz que tenha gostado

  • @osmaloureiro
    @osmaloureiro 2 года назад

    top seus videos, te acompanho desde que vc era magrinho.

    • @DiasDeDev
      @DiasDeDev  2 года назад +1

      Kkkkkkkkk
      Que bom que tem curtido, mano!
      🤩

  • @elaynecarla-2817
    @elaynecarla-2817 2 года назад

    Muito interessante ainda mais usando com php que fica mais bonito! Ótimo conteúdo.

    • @DiasDeDev
      @DiasDeDev  2 года назад +1

      Que bom que gostou, Elayne.
      😁

  • @wesscs
    @wesscs 2 года назад +1

    Parabens primeiro conteudo super descritivo sobre Circuit Breaker em PHP ainda por cima, top

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Valeu demais, Weslley. Que bom que gostou! :-D

  • @LeonardoLimawebdev
    @LeonardoLimawebdev 2 года назад

    Muito bom o conteúdo, parabéns Dias.
    Vou colocar aqui algo que li sobre isso :
    (Vamos combinar, todos os serviços falharão em algum momento, é tudo uma questão de tempo. Os Circuit Breakers permitem que o sistema lide com essas falhas normalmente. Ao aplicar este padrão, estamos antecipando possíveis problemas (ou consequências 😃) da aplicação.)

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Boa. É bem por aí mesmo. :-D

  • @_alexollie
    @_alexollie 2 года назад

    Belo conteudo! Aprendi mais uma😊😊😊

    • @DiasDeDev
      @DiasDeDev  2 года назад +1

      Que bom que gostou, Alex.
      😁

  • @trap7369
    @trap7369 2 года назад

    caramba, massa essa interceptação das excessões pra microsserviços...
    nos meus, sempre uso as funções set_error_handler e set_exception_handler pra definir o comportamento em caso de exceção, mas agora vou dar uma olhada nesses pacotes.

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Que bom que o conhecimento vai ser útil. :-D

  • @thiaguinhowjj
    @thiaguinhowjj 2 года назад

    Consigo aplicar esse mesmo pattern para consumo de apis ou crawlers? Tenho utilizado uma estrutura de retry e backoff com jobs no Laravel, mas está um tanto incipiente. Outra coisa que queria entender também é se o que é feito no circuit breaker é criar um long running process. Eu comecei a estudar esse pattern recentemente e tem despertado bastante a minha curiosidade. Seu vídeo veio muito a calhar. Parabéns!

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Microsserviços são basicamente APIs. É exatamente o exemplo do vídeo.
      Já pra crawler eu não vejo muito sentido...
      Sobre long running process, não necessariamente, não. No exemplo do vídeo, por exemplo, isso não foi necessário.

  • @sidneysouza3034
    @sidneysouza3034 2 года назад

    TI ajudando a entender elétrica ou elétrica ajudando a entender TI kkkkkkkk.
    Mundos que eu amo, mas infelizmente apenas um paga minhas contas!

    • @DiasDeDev
      @DiasDeDev  2 года назад +1

      Heheheh
      Pois é. Mas confesso que não entendo nada de elétrica. Só essa analogia mesmo.
      Kkkkkk

  • @desenvolvimentointerpryce5888
    @desenvolvimentointerpryce5888 Год назад

    Mas para serviço em produção, não seria melhor configurar essa proteção do lado do servidor web, em vez da aplicação? Ou na aplicação seria eficaz tanto quanto?

    • @desenvolvimentointerpryce5888
      @desenvolvimentointerpryce5888 Год назад

      No caso apenas para publico ne? Pelo que entendi parece que isto funciona melhor para requisições internas, algo como a comunicação da lógica. É isso?
      Só sei que é muito interessante e irei estudar mais isto. :)

    • @DiasDeDev
      @DiasDeDev  Год назад

      Implementar o padrão no servidor web pode ser possível sim, mas nem todo servidor web fornece essa funcionalidade.

  • @rodrigofarias2620
    @rodrigofarias2620 2 года назад

    Parabéns pelo conteúdo!!! Seria interessante mostrar o que é armazenado no Redis, pelo que entendi ele depende de um client que armazena essas informações. Abraço!

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Ele precisa de algum driver pra salvar o número de requisições, timestamp da última requisição, etc. Não precisa ser necessariamente Redis. Pode ser APCu, etc. Eu fui de Redis por ser mais fácil. rsrsrs

  • @Cebolinha1999
    @Cebolinha1999 Год назад

    Bom dia! Uma curiosidade... O Circuit Breaker na prática é implementado junto ao API GATEWAY? O API GATEWAY é responsável por isso?

    • @DiasDeDev
      @DiasDeDev  Год назад

      Pode ser implementado no cliente da requisição, no service mesh, etc. Há várias possibilidades. Eu nunca vi implementado no API Gateway, mas é uma possibilidade sim.

  • @maydana.programador
    @maydana.programador 2 года назад

    Que cara bom..

    • @DiasDeDev
      @DiasDeDev  2 года назад

      Fico muito feliz que tenha gostado. :-D

  • @AeroWebsites
    @AeroWebsites Год назад

    oia ai, a camisa do darkmira

  • @bruno2182
    @bruno2182 2 года назад

    Mas não ia dar na mesma coisa? Sé o serviço estiver em baixa Client vai receber um erro do Microsserviço, e depois vai continuar a receber um erro (só que do Circuit Breaker). Ou será que o circuit breaker poderia mandar uma mensagem para um serviço de filas para que fosse tentado de novo? Era interessante falar sobre CQRS e sobre o Symfony menseger tbm! :D

    • @williamxsp
      @williamxsp 2 года назад +3

      O objetivo não é evitar a falha, mas não sobrecarregar um serviço que já está apresentando defeito.

    • @DiasDeDev
      @DiasDeDev  2 года назад +2

      Exatamente, William. O objetivo é não ir desnecessariamente ao serviço que está falhando, retornando mais rápido para o serviço atual não ser sobrecarregado também além de dar tempo para o outro serviço se recuperar.