Cara, muito bom, estou exatamente nesse ponto da minha aplicação, na verdade tenho alguns microserviços criados já, mas estou testando eles, e entendendo sobre onde um modelo se sobressai ao outro. Mas já trabalhei tanto com MS quanto com Monolito modular, curto as duas abordagens, se bem construídas, acho que rola nos dois casos
Com relação ao ponto "Difícil de manter padronizado", se entendi corretamente, adotar o uso de linters, formatters e typecheckers, como eslint, prettier, typescript, etc., com a mesma configuração de forma obrigatória para todos os ambientes não resolveria?
@@kaiocesar8578 exato, a solução que o Matheus falou também é o problema, ter que manter x microsserviços padronizados da trabalho, por mais que tenha lint e etc, dificilmente vais manter o mesmo padrão de arquitetura e de design de código. E o trabalho de ter que atualizar libs em vários serviços também gasta tempo e não entrega valor nenhum.
a comunicação entre os modulos do monolito é feito como? por exemplo no caso "pagamento" pode ser " à vista" ou "parcelado", sendo que tenho 3 modulos, pois ao gerar um pagamento preciso gerar junto na mesma request e transação ou "a vista" ou as "parcelas". Como faço para comunicar entre os modulos de forma que um dia seja facil de separar em MS?
Kaio, boa pergunta, na verdade, a grande vantagem de um monólito é que tu podes escolher e evoluir a tua maneira de comunicação. Eu sugiro tentar ser desacoplado desde o inicio, começar com event emitter por exemplo e depois mover para uma fila. Mas tu podes ter uma comunicação direta entre eles inicialmente, chamando um service do outro modulo enquanto tu valida se a separação entre eles está certa e depois tira essa dependência direta. A ideia é ir desacoplando ao longo do tempo
Cara, muito bom, estou exatamente nesse ponto da minha aplicação, na verdade tenho alguns microserviços criados já, mas estou testando eles, e entendendo sobre onde um modelo se sobressai ao outro. Mas já trabalhei tanto com MS quanto com Monolito modular, curto as duas abordagens, se bem construídas, acho que rola nos dois casos
Às 😊ií
Com relação ao ponto "Difícil de manter padronizado", se entendi corretamente, adotar o uso de linters, formatters e typecheckers, como eslint, prettier, typescript, etc., com a mesma configuração de forma obrigatória para todos os ambientes não resolveria?
Ajudaria mas não resolveria 100%
@@kaiocesar8578 exato, a solução que o Matheus falou também é o problema, ter que manter x microsserviços padronizados da trabalho, por mais que tenha lint e etc, dificilmente vais manter o mesmo padrão de arquitetura e de design de código.
E o trabalho de ter que atualizar libs em vários serviços também gasta tempo e não entrega valor nenhum.
@@WaldemarNetoDevLab Então acaba sendo uma "solução problemática"?
a comunicação entre os modulos do monolito é feito como? por exemplo no caso "pagamento" pode ser " à vista" ou "parcelado", sendo que tenho 3 modulos, pois ao gerar um pagamento preciso gerar junto na mesma request e transação ou "a vista" ou as "parcelas". Como faço para comunicar entre os modulos de forma que um dia seja facil de separar em MS?
boa tarde Kaio,
eu adoto de uma forma com que a comunicação entre eles ocorrem através de pubs and subs (publishers and subscribers) com Kafka.
Kaio, boa pergunta, na verdade, a grande vantagem de um monólito é que tu podes escolher e evoluir a tua maneira de comunicação. Eu sugiro tentar ser desacoplado desde o inicio, começar com event emitter por exemplo e depois mover para uma fila.
Mas tu podes ter uma comunicação direta entre eles inicialmente, chamando um service do outro modulo enquanto tu valida se a separação entre eles está certa e depois tira essa dependência direta.
A ideia é ir desacoplando ao longo do tempo
Tentando balancear o custo, praticamente toda request vai ter auth!
Bom dia eu tenho uma duvida pontual! Auth! por end point ou criar um proxy?
Fala Thiago, pode me falar um pouco mais de como tu faria com um proxy o auth? De qual tipo de Auth tu ta falando?
@@WaldemarNetoDevLab authenticação para dar acesso aos endpoint's
Largou mão do neovim?
Haha temporariamente por causa do Copilot chat, assim que tiver um bom suporte pra IA eu volto :D