O documento discute as arquiteturas monolíticas e de microserviços, comparando suas vantagens e desvantagens. A arquitetura monolítica é mais simples para iniciar um projeto, mas tem limitações de escalabilidade. Já a arquitetura de microserviços permite maior escalabilidade, porém é mais complexa de implementar e manter a consistência entre os serviços.
2. Arquitetura de software
...A software architecture is defined by a
configuration of architectural
elements, components, connectors, and data...
(FiELDING, 2000)
3. Arquitetura de software
...Foco na organizaç o, abstraindo problemasã
n o funcionais, quando n o pensada pode ser umã ã
problema para evoluç o...ã
5. Arquitetura monolítica
...a monolithic server is a natural way to
approach building such a system.
All your logic for handling a request
runs in a single process...
9. Arquitetura monolítica
Rápida para iniciar o desenvolvimento
Fácil reaproveitamento de código
Deploy de uma unica aplicaç oã
Conjunto minimo de integraç esõ
12. Arquitetura de microserviços
Microservices - also known as the microservice
architecture - is an architectural style that structures
an application as a collection of loosely coupled
services, which implement business capabilities.
(Chris Richardson)
13. Arquitetura de microserviços
Uma arquitetura de microserviços é aquela onde
todas ou parte das responsabilidades de um
software s o dividadas em outras pequenas partesã
que funcionam de maneira isolada e autônoma
14. Arquitetura de microserviços
Isolada – cada serviço deve isolar uma única
responsabilidade do software e fornecer essa
responsabilidade através de uma interface comum,
por exemplo APIS REST
15. Arquitetura de microserviços
Autônoma – cada serviço deve funcionar
independente de todos os outros serviços, e possuir
mecanismos para prover resiliência
16. Arquitetura de microserviços
...O processo para iniciar com microserviços
depende da necessidade de cada projeto,
básicamente é necessário compreender quais
domínios da aplicaç oã
devem ser isolados e tratados como aplicaç es aõ
parte...
19. Arquitetura de microserviços
Permiti escalonamento por recursos
Facilitando a escala por demanda
Base de código menor e menos complexa
Mudanças acontecem isoladamente
No contexto de cada microserviço
20. Arquitetura de microserviços
Várias aplicaç es para serem monitoradasõ
O deploy acontece para cada microserviço
Grau de integraç o mais elevado e complexoã
Manter a consistência de funcionamento entre
todos os microserviços