O documento discute a arquitetura de micro serviços usando Node.js. Ele explica que micro serviços são pequenos serviços autônomos que trabalham juntos através de comunicação, geralmente modelados em torno de um domínio de negócio específico. Também descreve como evoluir de uma arquitetura monolítica para micro serviços de forma gradual, começando com a extração de serviços de um código monolítico e eventualmente migrando para serviços totalmente independentes. Finalmente, exemplifica como desenvolver micro serviços em Node.js, com f
8. DOMÍNIO DE
NEGÓCIO
Modelados para representar um domínio de
negócio, geralmente cada parte representa um
modelo ou entidade de todo o negócio.
8
Produtos
Pedidos
Usuários
Comércio Eletrônico
Outros Serviços
13. O CAMINHO
PARA MICRO
SERVIÇOS
O caminho direto para uma arquitetura de
micro serviços contém muitos riscos.
13
Imagem: http://martinfowler.com/bliki/MonolithFirst.html
14. MONOLÍTICO
PRIMEIRO
Yagni (You aren’t gonna need it)
Presumir que o sistema precisar de algo no
futuro, não indica que precisa ser construído
agora (por que você pode não precisar)
14
MONOLÍTICO
19. Não é para qualquer um!
19
Imagem: http://martinfowler.com/bliki/MicroservicePrerequisites.html
20. PRÉ-
REQUISITOS
Provisionamento Rápido
Criar servidores de forma rápida e fácil,
geralmente através de automação e servidores
na nuvem.
Monitoramento Básico
Habilidade de identificar e depurar problemas
entre os diferentes serviços.
Implantação Rápida ou Contínua
Implantar de forma contínua os serviços nos
diferentes ambientes (testes, produção, etc). A
cultura de DevOps ajuda na manutenção e
implantação dos serviços.
20
23. POR QUE
NODE.JS?
Rápido Provisionamento e fácil implantação
contínua.
Feito para construir sistemas distribuídos.
Mas não é a bala de prata!
Uma vantagem de micro serviços é a
heterogeneidade tecnológica.
23
36. ENTREGA CONTÍNUA
36
Um grande build
Imagem: http://www.slideshare.net/ThoughtWorks/deploying-operating-microservices
Video: https://www.youtube.com/watch?v=OTSlg7_y3bA
37. ENTREGA CONTÍNUA
37
Um build por serviço, repositório único
Imagem: http://www.slideshare.net/ThoughtWorks/deploying-operating-microservices
Video: https://www.youtube.com/watch?v=OTSlg7_y3bA
38. ENTREGA CONTÍNUA
38
Um build por serviço, vários repositórios
Imagem: http://www.slideshare.net/ThoughtWorks/deploying-operating-microservices
Video: https://www.youtube.com/watch?v=OTSlg7_y3bA