Microservices na prática com Java Spring

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

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

  • @MichelliBrito
    @MichelliBrito  Год назад +39

    Pessoal, segue aqui o link do código no Github: github.com/MichelliBrito/microservices-na-pratica

  • @valzinho1198
    @valzinho1198 Год назад +27

    nossa incrivel como o youtube consegue esconder conteudo tão bom e recomendar apenas coisas lastimaveis, enfim, que bom que encontrei esse canal

  • @carloseduardo-pn2uy
    @carloseduardo-pn2uy 2 месяца назад +2

    Mesmo eu não fazendo o projeto eu entendi tudo, e consigo desenrolar só por conta da experiência que já tenho com o ecossistema Spring. Enfim, parabéns Michelli sua didática é ótima. Abraço de um dev juninho aprimorando os conhecimentos, não tinha visto ainda sobre micro serviços e mensageria e o seu vídeo apareceu na hora certa.

  • @LoperaTw
    @LoperaTw 9 месяцев назад +2

    Excelente trabalho, tudo ficou realmente muito bom !
    A qualidade do vídeo, didática, áudio ficou limpa demais, merece os devidos parabéns porque com certeza deve dar uma trabalhadeira infinita pra produzir isso tudo exatamente desta forma.
    Esse foi meu primeiro contato com Microservices, falta muita coisa pela frente, mas pro inicio, esse vídeo com certeza foi muito importante.
    Se eu não estivesse atualmente desempregado, com certeza iria dar um apoio a mais pela sua dedição.
    Continue assim !

  • @Onnyon3
    @Onnyon3 9 месяцев назад +5

    Fui acompanhando devagarinho e consegui criar tudo do zero. Muito obrigada

  • @CarlosLima-yk4cf
    @CarlosLima-yk4cf 3 месяца назад +2

    Sensacional, além de microserviços e comunicação assíncrona, mostrou como estruturar uma aplicação básica! Minha sugestão são vídeos voltados a patterns como SEDA, Sagas, Event Driven, etc! Parabéns, super recomendo, video aula melhor do que muitos cursos completos!

  • @pudjizimqueimado4k180
    @pudjizimqueimado4k180 9 месяцев назад +3

    vc tem todo conteudo que eu preciso isso é incrivel

  • @danilo7794
    @danilo7794 9 месяцев назад

    Parabéns pelo vídeo, Michelli. Até quem está iniciando em desenvolvimento de sistemas consegue ter pelo menos uma visão macro de como tudo funciona em relação a arquitetura de microserviços, mesmo que superficialmente. Fiquei com muitas dúvidas em relação às implementações dos componentes dos MSs, mas apenas por que ainda me faltam conhecimentos técnicos - principalmente em relaçãos às anotations e de como elas funcionam -, os quais pretendo aprofundar através dos seus outros vídeos. Sua didática em si é muito boa!

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

    Muito bom o jeito que você explica, é envolvente! Eu também trabalho com Java e Spring com programação reativa, e curto ver novas maneiras de explicar os mesmos conceitos. A gente sempre vê alguma nuance que não tinha visto antes.

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

    Nao assisti a aula toda mas com öoucos minutos deu pra perceber que tem muita propriedade no assunto. Parabens !

  • @yurirodrigues7875
    @yurirodrigues7875 11 месяцев назад

    Adorei o vídeo, deu pra entender muito bem o fluxo de como um microsserviço funciona

  • @SLZGAM3R
    @SLZGAM3R Год назад +4

    Estou começando a estudar microsserviços agora e a sua didática é excelente, o conteúdo não é simples mas com o seu fluxo de apresentação eu consigo ligar os pontos.

  • @rariber
    @rariber 2 дня назад

    muito bom parabéns.

  • @ameliasaomarcos
    @ameliasaomarcos Год назад +5

    Legal estou estudando outra linguagem mas é interessante ver alguém consolidado na área dando dicas. Obrigado!!

  • @TkdCrisDev
    @TkdCrisDev 7 месяцев назад

    Muito obrigado pela sua didática incrível.
    Iniciei um projeto pessoal com java e arquitetura de microservices e seu vídeo me ajudou demais. S3

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

    Eu decidi que ia começar a estudar microservices hj e logo hoje você lança esse vídeo. Muito obrigado!

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

    Comecei a acompanhar você pelo LinkedIn, é maravilhoso sua didática, nunca tinha mexido com Java antes, atualmente trabalho com frontend mas eu estou migrando para fullstack. E meus estudos é apenas na prática, espero acompanhar mais vídeos seu sobre java. Parabéns pelo conteúdo e didática!

  • @antonioteixeira1779
    @antonioteixeira1779 Год назад +1

    Nossa, bom demais. Esse é daqueles videos que a gente salva pra ver depois, envia para os amigos, tenta dar like mais de uma vez. Completo, podemos construir qualquer coisa a partir disso, impressionante. Parabéns Michelli!

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

    Michelli é a rainha do microservices. Brabíssima!

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

    Eu entro em qualquer vídeo da Michelli dando like! Conteúdo espetacular!

  • @gabrielsartarelli7759
    @gabrielsartarelli7759 Год назад +1

    esse canal é realmente um achado, conteúdo incrível!

  • @samuelacericonia
    @samuelacericonia Год назад +1

    Parabens michelli por dar um show nas suas aulas , eu sou time .Net , mas adoro fazer comparativos de linguagens e suas firmas equivalentes de resolver problemas , conteúdo excelentíssimo 😊

  • @edivandingo
    @edivandingo 4 месяца назад

    fiz com java 21 e deu certinho. show

  • @ygorfranca2372
    @ygorfranca2372 Год назад +2

    Muito obrigado por disponibilizar um conteúdo como esse.... a qualidade dos vídeos e a riqueza de conteúdo me fazem querer chegar no seu patamar um dia..... Parabéns 👏👏🎉🎉

  • @millerjmatos
    @millerjmatos Год назад +1

    Estou aprendendo muito contigo Michelli, conteúdo de extrema qualidade

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

    Adorei a aula Michelli, estou em transição de carreira em Backend...e suas dinâmicas e conceitos de ensinamentos são muito bons, conhecimento é pra vida toda..obrigado!!!

  • @f.b.fonseca5645
    @f.b.fonseca5645 7 месяцев назад

    Teu canal é maravilhoso, Michelli! Obrigada por compartilhar todo o teu conhecimento conosco!

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

    Excelente aula professora, muito obrigado por compartilhar esse conteúdo de grande valia!

  • @sanchez-emir
    @sanchez-emir Год назад

    Excelente video, mas videos sobre microservicios por favor 💯💯💯

  • @acreditu
    @acreditu 8 месяцев назад +2

    Boa noite Michelle, Parabéns pelo curso está me ajudando muito, no meu trabalho estou usando o Kafka, vc sabe um Jeito de usar o kafka igual vc usa o Rabbit sem instalar o docker na maquina?

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

    Michelli sempre trazendo conteúdo de muita qualidade para nós, parabéns!

  • @alexanderalmeida6534
    @alexanderalmeida6534 Год назад +27

    Faz uma aula de autenticação completa com JWT, RefreshToken e permissões!

    • @AntonioCabralNumberOne
      @AntonioCabralNumberOne 10 месяцев назад +2

      Já agora, adiciono ao pedido o Keycloak para gerir isso tudo por nós e podermos simplesmente focar-nos a desenvolver o produto e não estar constantemente a reinventar a roda a gerir Users, Roles, Permissões, validações de tokens e etc.

    • @Sumrak_404
      @Sumrak_404 9 месяцев назад

      @@AntonioCabralNumberOne O prime do negocio está nisso... praticamente a aula de JWT é isso, se não for pra ter isso deixa essa aula assim mesmo

  • @pivamix
    @pivamix Год назад +1

    Para facilitar poderia usar uma infra com docker-compose, com o postgres e RabbitMQ

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

    Excelente ensinamento Michelli, parabéns!!

  • @VaDigitNow
    @VaDigitNow 11 месяцев назад

    Muito obrigado, as aulas ajuda d+....

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

    Estou fazendo um projeto spring com Kotlin, vai ser bom pegar uma visão e ver algumas diferenças de como fica com java

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

    Que top! Estava procurando exatamente isso..

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

    Muito obrigado pelo conteúdo!

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

    Parabéns pelo conteúdo!

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

    Que perfeição de vídeo!!!

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

    Que perfeito ! Parabéns.

  • @pablogonzalez1924
    @pablogonzalez1924 7 месяцев назад

    Que aula TOP, na próxima faz com apache kafka

  • @wesleymrosa
    @wesleymrosa 5 месяцев назад

    Outro dos seus vídeos excelentes.
    #Parabéns

  • @igorrodrigues6253
    @igorrodrigues6253 Год назад +1

    Seria interessante refazer esse tutorial, mas usando docker

  • @turcodemontecristo
    @turcodemontecristo 8 месяцев назад

    Incrível seu canal. Ja me inscrevi

  • @gabrielanataline8817
    @gabrielanataline8817 5 месяцев назад

    Ótimo vídeo, obrigada ! Michelli, você tem algum vídeo/projeto que fale sobre arquitetura hexagonal ?

  • @R7メ-l2s
    @R7メ-l2s 11 месяцев назад

    que espetáculo!!!!!!!!!

  • @sirguroz
    @sirguroz 10 месяцев назад +10

    Não se deve usar o bloco Finally para retornar algo. O bloco Finally serve para finalizar processos como por exemplo fechar uma conexão ao BD.

    • @criador.robo-rpa
      @criador.robo-rpa 7 месяцев назад +3

      Quando usamos finally, ele deve está no contexto tanto no try quanto no catch! Deu try ou catch? Quando finaliza, vai direto para o finally!!

    • @clone9550
      @clone9550 5 месяцев назад +3

      até onde sei o finally é só um bloco que dever ser chamado independente do resultado. tipo dando erro ou não, eu quero que retorne o código da operação

    • @rzinak
      @rzinak Месяц назад +2

      @@clone9550 finally não deve ser usado pra retornar alguma coisa, deve ser usado somente pra "limpar" alguma operação, fechar conexão, etc... E no contexto do tutorial, o finally é desnecessário, já que mesmo com erro, a gente vai salvar o email de qualquer forma. O correto no caso do vídeo é remover o finally e retornar o repository.save(email) fora do try/catch, por exemplo.

  • @viniiiixd
    @viniiiixd Год назад +6

    Por que instanciou um UserModel no controller? Não seria ideal mandar o Dto para a camada de service e lá criar a entidade(userModel) mapeada do Dto? Sei que a intenção principal do vídeo é a comunicação entre os microservices mas fiquei com esta dúvida.

    • @lucasdasilva764
      @lucasdasilva764 3 месяца назад

      Fala mano, beleza??
      Na minha visão o motivo de instanciar o UserModel no Controller é por uma questão de simplificação e foco na comunicação, além de ser um tipo de projeto simples:
      Simplificação: O controller realiza a conversão e chama o serviço apenas com a entidade pronta, o que simplifica a lógica do serviço.
      Comunicação: Se a principal responsabilidade do controlador é lidar com a comunicação entre o cliente e o serviço, ele pode realizar a conversão para a entidade.
      Passar o DTO para a camada de serviço:
      Responsabilidade clara: A conversão do DTO para a entidade ocorre na camada de serviço, que é responsável pela lógica de negócio e pela preparação dos dados para persistência.
      Flexibilidade: Permite que a camada de serviço tenha mais controle sobre como os dados do DTO são convertidos e manipulados antes de serem persistidos.
      Se for pensar em arquitetura onde a responsabilidade de conversão é clara, creio que faça mais sentido mesmo passar o DTO para a camada de serviço, creio ser até o mais comum pensando em projetos complexos.
      Mas para esse caso atual do video, não diria que tem certo ou errado.

  • @AndersonSilva-wk8yq
    @AndersonSilva-wk8yq Год назад

    Conteúdo muito bom😀

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

    E hoje descobri como os e-mails chegam a mim após cadastros ♥️😹

  • @Titoteste-l7v
    @Titoteste-l7v 6 месяцев назад

    Excelente.

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

    Conteúdo top 🚀👌🏼

  • @renanrodoolfo9827
    @renanrodoolfo9827 10 месяцев назад

    Ótima aula, parabéns! Gostaria de saber qual o programa que você utiliza para elaborar os cenários (flows)?

  • @josrpedroso6227
    @josrpedroso6227 5 месяцев назад

    Quando vamos subir esse tipo de arquitetura para um servidor, usa o docker compose para subir o db e a aplicação??

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

    muito bom, gostei

  • @iarchcity
    @iarchcity 3 месяца назад

    uma dúvida, caso eu não queria instalar o postgres e queria usar docker, como que ficaria o compose dessa aplicação? eu teria que fazer um container para cada um dos MS ou eu poderia usar apenas um arquivo compose para criar os dois?

  • @DiegoSPaulino
    @DiegoSPaulino 3 месяца назад

    Oi, Michelli! Muito obrigado pelo tutorial! Eu estava seguindo ele e percebi que nesse momento 1:31:10, enquanto a sua mensagem estava chegando no RabbitMq com o content_type de application/json, a minha estava chegando como application/x-java-serialized-object, e quando subo o servidor do email, recebo a mensagem de erro de que o Jackson2JsonMessageConverter não conseguiu converter ele para de java-serialized-object para json.
    Nesse caso, o que eu deveria fazer para garantir que sempre que essa mensagem for para o RabbitMq ela vá como json?

  • @davirosa7484
    @davirosa7484 2 месяца назад

    Olá. Por que salvar o e-email no banco de dados?

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

    muito bommmmmmmmmmmmm

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

    Qual câmera você usa?

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

    1:30:01

  • @AntonioCabralNumberOne
    @AntonioCabralNumberOne 6 дней назад

    Bom tutorial, mas peca apenas por não ter Gateway nem usar Docker para containerizar os microserviços.

  • @DouglasM.Amaral
    @DouglasM.Amaral 10 месяцев назад

    As minhas mensagens quando vão para o Rabbit estão indo para Unacked. Sabe me dizer se é normal? Poois está seguindo o fluxo normal até o envio.

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

    @MichelliBrito Por que no microservice user, o EmailDto é uma classe normal, e não um record, como foi no microservice email ?

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

      Eu mesmo respondo:
      Ao invés de usar uma classe tradicional, usei um record. Funcionou do mesmo jeito.
      public record EmailDto(
      UUID userId,
      String emailTo,
      String subject,
      String text) {
      }
      Claro que tive que mudar o método na classe UserProducer, para popular o dto:
      // Método para converter e enviar a mensagem:
      public void publishMessageEmail(UserModel userModel) {
      // Preencher os dados do emailDto com os dados do userModel:
      String subject = "Cadastro realizado com sucesso!";
      String text = userModel.getName() + ", seja bem vindo(a)!
      "
      + "Agradecemos o seu cadastro, aproveite agora"
      + " todos os recursos da nossa plataforma!";
      var emailDto = new EmailDto(
      userModel.getUserId(),
      userModel.getEmail(),
      subject,
      text
      );
      rabbitTemplate.convertAndSend("", routingKey, emailDto);
      }

  • @tiagosaldanha5602
    @tiagosaldanha5602 8 месяцев назад

    public static void main(String args[]) {
    boolean like = true;
    while(like) {
    system.out.println(👍🏻);
    }
    }

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

    Qual o nome do software que usa para desenhar a arquitetura? Pf meu gato pediu

  • @Sinaiii
    @Sinaiii 11 месяцев назад

    É possível criar um producer que irá pedir informação da base de dados de outro microserviço? E o consumer do respetivo micro serviço enviar essa informação?

    • @Kalashnikov_047
      @Kalashnikov_047 11 месяцев назад

      52:12 O meu n da um erro mas tmb n cria as tabelas, eu estou utilizando o MySQL...
      O que eu observei de diferente no TomCat seria:
      main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration)
      e o unico que deu warn foi:
      JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
      Alguém sabe se isso seria o problema ? Nos properties está tudo certo

  • @EnigmaTerráque
    @EnigmaTerráque 9 месяцев назад

    Pessoal, alguem pode me ajudar, o dashboard do rabbiqt mudou, e não esta mais aparecendo esse link que ela copiou. Como eu faço para pegar esse link ?

  • @peddroccas_25
    @peddroccas_25 15 дней назад

    To tendo um erro ao tentar conectar com o broker

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

    não entendi pq o messageConverter precisa ser criado na classe de configuração, alguém poderia me explicar.

  • @AndreLuiz-ol2vw
    @AndreLuiz-ol2vw Год назад

    No momento estudo C# a irmã do Java hehe😂

  • @gabrielmarcolinosilva7268
    @gabrielmarcolinosilva7268 7 месяцев назад

    alguem pode me ajudar? n quero baixar nenhuma IDE e to fazendo pelo VS code, sei q pode ser uma das melhores praticas, mas meu pc já n é dos melhores, enfim, o VS code n entende quando chega na parte do broker, ele dá: "'broker.queue.email.name' is an unknown property.vscode-spring-boot(PROP_UNKNOWN_PROPERTY)"

  • @igorcastilhos
    @igorcastilhos 10 месяцев назад

    Estou recebendo esse erro no último passo, na hora de enviar o email pro Gmail: Failed message 1: jakarta.mail.MessagingException: can't determine local email address. Fica na Linha 43 do EmailService.java.