Vida longa para SOA com Microservices 
Fábio Rosato 
fabio.rosato@sensedia.com 
@frosato
Sobrea Sensedia
Design, Exposição, Gerenciamento e Engajamento em APIs 
Headquarterem Campinas, escritórios em São Paulo, Rio e Philadelphia 
Classificados como Visionários no Quadrante Mágico do Gartner 
(*)Magic Quadrant for Integrated SOA Governance Technology Sets, 2009
Contextualização
Como minimizar?
Microservices
A essência de microservicesnão é nova
A arquitetura de microservicesé fundamentada na criação de um conjunto de APIse componentes muito pequenos, com baixíssima capacidade funcional
2008 
Tudoemuma 
WebApp(.war) 
2010 
100s de 
microservices
Arquitetura Monolítica 
Funcionalidades em um único processo… 
…em uma única Instância de servidor… 
…e escala por replicação
Arquitetura Microservices 
Cada elemento funcional em um serviço… 
...e escala esses serviços em servidores, replicando se necessário
Fonte: The ArtofScalability 
Decompondo 
Aplicações 
em 
Serviços 
The Scale 
Cube
Decomposição 
•Colocar a aplicação com o modelo de domínio 
Decompondo 
Aplicações 
em 
Serviços 
* Cuidado com nanoservices
- 
- 
- 
Independência 
Autonomia 
Entregacontínua 
- 
Serviçosfocados 
- 
Escalabilidade
- 
- 
- 
Sistema distribuído 
Testes 
DevOpsSkill 
- 
Replicações de dados e regras 
- 
Transação
Especialistas 
UX 
Lei de Conway 
Especialistas 
Middleware 
Especialistas 
DBAs 
xyz 
Partners’ Apps 
Mobile Apps
Time multi-funcional 
Governançadescentralizada
RealtimeAPI Traffic 
https://api.[you].com/… 
Powered by 
API Gateway 
Service aggregation 
Rate Limiting 
Monitoring & Alerts 
Authentication Models 
Policy Enforcement 
Exception handling 
Analytics on API Consumption 
Partners’ Apps 
Mobile Apps 
Internal Services 
@Backend 
API Gateway Pattern
xyz 
Partners’ Apps 
Mobile Apps 
Monolítica –DatabaseÚnico 
x 
y 
z 
Partners’ Apps 
Mobile Apps 
Descentralizaçãode Dados 
Microservices–Applicationdatabase
Aplicação monolítica 
Estratégias para 
Legado! 
2 
Novo Serviço 
1 
Encapsulamento 
Extração total
É SOA?
Princípios da Orientação a Serviços: 
Serviços são Reutilizáveis 
Serviços compartilham um Contrato formal 
Serviços possuem um Baixo Acoplamento 
Serviços Abstraem a lógica 
Serviços são capazes de se Compor 
Serviços são Autônomos 
Serviços evitam Alocação de Recursos por longos períodos 
Serviços são capazes de ser Descobertos 
SOA: Principles of Service Design 
Copyright © 2008 SOA Systems by Thomas Erl 
1 
2 
3 
4 
5 
6 
7 
8
Princípios da Orientação a Serviços: 
Serviços são Reutilizáveis 
Serviços compartilham um Contrato formal 
Serviços possuem um Baixo Acoplamento 
Serviços Abstraem a lógica 
Serviços são capazes de se Compor 
Serviços são Autônomos 
Serviços evitam Alocação de Recursos por longos períodos 
Serviços são capazes de ser Descobertos 
SOA: Principles of Service Design 
Copyright © 2008 SOA Systems by Thomas Erl 
1 
2 
3 
4 
5 
6 
7 
8
Serviço A 
Serviço B 
Serviço A 
Serviço B 
Serviço A 
Autonomia 
Baixa 
Alta 
Fonte: Thomas Earl
Microservices== SOA
Junte-se aotime!
Fábio Rosato 
fabio.rosato@sensedia.com 
@frosato
Referências 
•http://martinfowler.com/articles/microservices.html 
•http://www.thoughtworks.com/insights/blog/microservices-nutshell 
•http://pt.slideshare.net/stonse/microservices-at-netflix?next_slideshow=1 
•http://qconlondon.com/dl/qcon-london- 2014/slides/BrianDegenhardt_RealTimeSystemsAtTwitter.pdf

Vida longa para SOA com microservices