MicroServices
@diego_pacheco
Software Architect | Agile Coach
Microservices
Microservices
Monoliticos
MSA veio depois de SOA
Microservices: Cases - Benchmark
~600 microservices ~150 microservices para uma página
Microservices: Fine-Grained Business
Microservices: Independent + Re-usable
MSA é SOA!
http://martinfowler.com/articles/microservices.html
Unix Philosophy: Dumb Pipes & Smart Endpoints
Remover o “Middleware”
Descentralização
ESB Microservices
Isolamento
Isolamento: Beneficios
Times Recursos Gestão
Isolamento: Beneficios
Times
 Ter multiplos times trabalhando ao mesmo tempo em
coisas diferente, sem merge 
 É possível ter times por serviços
 Cada time pode trabalhar com técnologias diferentes
 Cada time pode trabalhar de formas diferentes por a
dependencia dos times vira por serviços e não pro
pessoas.
 É possível ter times fazendo delivery de business e
outros atualizando tecnologias ou fazendo melhorias de
performance.
Isolamento: Beneficios
Recursos
 Hardware diferente por serviço
 Serviços podem usar mais ou menos recursos
 Serviços não afetam os outros em runtime, tem mais
resiliencia.
 Isolamento de banco permite atualizaçoes no modelo e
tecnolgoia de dados sem impactos e outros serviços.
 Isolamento de CPU, Threads, Memoria, Rede faz com
que o serviço sejá autocontido e indepente assim tendo
mais facilidade para portar de um lugar para outro até
mesmo do DS local para Cloud ou vice-versa.
Isolamento: Beneficios
Gestão
 Diferentes prioridades do negócio podem ser feitas ao
mesmo tempo de um jeito melhor.
 Releases podem acontecer em simultaneo, sem
necessidade de tanta coordenação e bloqueio como em
outros modelos.
 Podem se priorizar melhor: Bugs, Débitos Técnicos,
melhorias de tecnologias e migrações.
 Times tem mais produtividade e menos dependencias.
Velocidade de deploy e test / experimentação de
funcionalidades.
Balanceamento
Anti-Patterns: Entendimentos Errados, Ideias Ruins entre outros…
ANTI-Pattern: 1 Serviço para cada coisa. EX: 1 WS pro operação.
ANTI-Pattern: 1 Serviço tem que ser sempre pequeno.
ANTI-Pattern: MSA é SOA, não ignore os principios.
SOC
Backward
Compatibility
Contracts Versioning
Governance
ANTI-Pattern: NanoServices <= 10..100 LOC. “nem todos concordam”
NanoService or Function as a Service?
Case: Netflix
Case: Twitter
Case: HailO
Case: Gilt
DDD: Domain Driven Design
Usando REST para Microservices
Spring Boot + REST
Node The JS way
Dropwizard+ REST
Netflix OSS - IPC
Akka as Microservice solution
Actors VS RPC
Colossus: nio + akka
Spray: Akka + HTTP
Muitas requests? Mobile? API Gateway Model
API Gateway Model: Como fica a UI?
IPC-ish, point-2-point, Brokerless solutions.
Ribbon
Quasar
Lightweight Servers
Big Fat Jar: $ java –jar service.jar | OneJar, Assembler, Packager, RPM…
Isolamento Físico
Tudo é sobre processos baratos.
Requisitos: DevOps
Requisitos: Monitoramento
Requisitos: Design Boundaries
Multiples DBs & TX
Users Service Images Service Comments Service
Eventual Consistency
 Alternativa a TX distribuidas
 Trabalha com eventos
 Os Serviços tem que ouvir esses
eventos e aplicar as mudanças nos
dados.
 Soluções:
 CQRS + Event Sourcing
 Topicos / Pub-Sub (JMS)
 Akka
 É Possível ter TX local
Eventual Consistency: ES
Log Centralizado – ELK Stack
Log Centralizado – Graphite + Grafana
http://grafana.org/
Log Centralizado – Graylog
https://www.graylog.org/overview/
Back Pressure / Throttling / Spooling
Runtime Isolation + Metrics
Runtime Isolation: Hystrix
Runtime Isolation: Circuit Breaker
https://github.com/Netflix/SimianArmy
Runtime Testing
Todos os microservicos tem que ter o seu proprio pipeline.
Sistema como um organismo vivo.
Microservices
MicroServices
@diego_pacheco
Software Architect | Agile Coach
Obrigado!
Thank you!

Mais conteúdo relacionado

PPTX
Integrating Microservices
PPTX
Amadurecendo Equipes com Microservices
PPTX
Microservices - Quebrando gigantes em pequenos
PDF
Introdução à Microservices
PDF
Vantagens e desvantagens de uma arquitetura microservices
PDF
Workshop soa, microservices e devops
PDF
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
PDF
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
Integrating Microservices
Amadurecendo Equipes com Microservices
Microservices - Quebrando gigantes em pequenos
Introdução à Microservices
Vantagens e desvantagens de uma arquitetura microservices
Workshop soa, microservices e devops
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...

Mais procurados (20)

PPTX
Microservices
PDF
Workshop Microservices - Arquitetura Microservices
PDF
Arquitetura de Micro Serviços
PDF
GUJavaSC - Combinando Micro-serviços com Práticas DevOps
PPSX
Netshoes - API Gateway
PDF
Arquitetura de Microserviços
PDF
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
PDF
Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
PPTX
Microserviços
PDF
PPTX
Integração utilizando REST API e Microservices
PDF
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
PDF
Arquitetura de Microservicos
PDF
GUJavaSC - Mini-curso Java EE
PPTX
Arquitetura de Microserviços - Tecnologia na Prática - Julho/2017
PDF
TDC Floripa 2017 - Criando Microservices Reativos com Java
PDF
Microservices com ASP.NET 5
PDF
GUJavaSC - Protegendo Microservices em Java
PDF
Preparando sua arquitetura para microservicos
PDF
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
Microservices
Workshop Microservices - Arquitetura Microservices
Arquitetura de Micro Serviços
GUJavaSC - Combinando Micro-serviços com Práticas DevOps
Netshoes - API Gateway
Arquitetura de Microserviços
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
Microserviços
Integração utilizando REST API e Microservices
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
Arquitetura de Microservicos
GUJavaSC - Mini-curso Java EE
Arquitetura de Microserviços - Tecnologia na Prática - Julho/2017
TDC Floripa 2017 - Criando Microservices Reativos com Java
Microservices com ASP.NET 5
GUJavaSC - Protegendo Microservices em Java
Preparando sua arquitetura para microservicos
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
Anúncio

Destaque (20)

PDF
Apache Cassandra - part 2
ODP
Monitoração de Infraestrutura e Serviços - Sensu
PDF
Stream Patterns
PDF
Agile tem que morrer? Já morreu? Hacker way? BS ou mais do mesmo?
PDF
Tech Evaluation
PDF
Team tools
PDF
MSA: Quando a gestão encontra a arquitetura
PDF
DevOps: The IT Revolution Era
PDF
Coaching & desenvolvimento de times
PDF
Microservices, soa e o melhor das filas
PDF
InfluxDB and Grafana: An Introduction to Time-Based Data Storage and Visualiz...
PDF
Dev opsdaykeynote
PDF
Datomic - Lidando com dados de maneira versionada
PDF
Microservices reativos usando a stack do Netflix na AWS
PDF
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
PDF
Structuring apps in Scala
PDF
CSS 4 - What's coming up
PDF
APIs: The Problems with Eating your Own Dog Food
PDF
Os cuidados e os limites do Responsive Web Design
PDF
Cloud Reliability Patterns
Apache Cassandra - part 2
Monitoração de Infraestrutura e Serviços - Sensu
Stream Patterns
Agile tem que morrer? Já morreu? Hacker way? BS ou mais do mesmo?
Tech Evaluation
Team tools
MSA: Quando a gestão encontra a arquitetura
DevOps: The IT Revolution Era
Coaching & desenvolvimento de times
Microservices, soa e o melhor das filas
InfluxDB and Grafana: An Introduction to Time-Based Data Storage and Visualiz...
Dev opsdaykeynote
Datomic - Lidando com dados de maneira versionada
Microservices reativos usando a stack do Netflix na AWS
Custom DevOps Monitoring System in MelOn (with InfluxDB + Telegraf + Grafana)
Structuring apps in Scala
CSS 4 - What's coming up
APIs: The Problems with Eating your Own Dog Food
Os cuidados e os limites do Responsive Web Design
Cloud Reliability Patterns
Anúncio

Semelhante a Microservices (20)

PPTX
Microserviços - Universidade Metodista - EETI 2016
PPTX
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
PPTX
Microservices - Canal .NET Dev Weekend
PPTX
Microservices - ALM Roadshow 2015
PDF
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
PPTX
Microsservicos serverles combinacao perfeita
PPTX
DevTalk 08/2019
PPTX
Microservices 2
PPTX
Microservices
PDF
Introdução a Service Mesh com Istio
PDF
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
PDF
Vida longa para SOA com microservices
PPTX
Architecture performance using micro services
PDF
TDC2017 | POA Trilha Arquitetura - Desafios de se implantar uma arquitetura d...
PDF
Arquitetura de Microserviços
PDF
O desafio de sustentar centenas de servicos
PPTX
Microservices com Spring Boot e Spring Cloud Netflix
PDF
Agenda Versão Final - CMG 14a. conferencia nacional
PDF
Um método para o desenvolvimento de software baseado em microsserviços
PPTX
TDC - Qual o tamanho adequado de um micro serviço?
Microserviços - Universidade Metodista - EETI 2016
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Microservices - Canal .NET Dev Weekend
Microservices - ALM Roadshow 2015
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
Microsservicos serverles combinacao perfeita
DevTalk 08/2019
Microservices 2
Microservices
Introdução a Service Mesh com Istio
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Vida longa para SOA com microservices
Architecture performance using micro services
TDC2017 | POA Trilha Arquitetura - Desafios de se implantar uma arquitetura d...
Arquitetura de Microserviços
O desafio de sustentar centenas de servicos
Microservices com Spring Boot e Spring Cloud Netflix
Agenda Versão Final - CMG 14a. conferencia nacional
Um método para o desenvolvimento de software baseado em microsserviços
TDC - Qual o tamanho adequado de um micro serviço?

Mais de Diego Pacheco (20)

PDF
Naming Things Book : Simple Book Review!
PDF
Continuous Discovery Habits Book Review.pdf
PDF
Thoughts about Shape Up
PDF
Holacracy
PDF
AWS IAM
PDF
PDF
Encryption Deep Dive
PDF
Sec 101
PDF
Reflections on SCM
PDF
Management: Doing the non-obvious! III
PDF
Design is not Subjective
PDF
Architecture & Engineering : Doing the non-obvious!
PDF
Management doing the non-obvious II
PDF
Testing in production
PDF
Nine lies about work
PDF
Management: doing the nonobvious!
PDF
AI and the Future
PDF
Dealing with dependencies
PDF
Dealing with dependencies in tests
PDF
Kanban 2020
Naming Things Book : Simple Book Review!
Continuous Discovery Habits Book Review.pdf
Thoughts about Shape Up
Holacracy
AWS IAM
Encryption Deep Dive
Sec 101
Reflections on SCM
Management: Doing the non-obvious! III
Design is not Subjective
Architecture & Engineering : Doing the non-obvious!
Management doing the non-obvious II
Testing in production
Nine lies about work
Management: doing the nonobvious!
AI and the Future
Dealing with dependencies
Dealing with dependencies in tests
Kanban 2020

Último (14)

PPT
10_ slides de Reuso sommerville cap 10.ppt
PPT
05_slide especificacao de sistemas de software e a uml UML.ppt
PPT
03_slide de Gerenciamento de Projetos .ppt
PDF
SLIDES - AULA 3 - CLASSES E OBJETOS EM JAVA - Material de Cleyton Souza - IFPB
PPT
07_slides de Estilos_Arquiteturais sommerville.ppt
PDF
SLIDES - AULA 1 - APRESENTAÇÃO - Material de Cleyton Souza - IFPB
PDF
SLIDES - AULA 2 - INTRODUÇÃO - Material de Cleyton Souza - IFPB
PDF
SLIDES - AULA 5 - HERANÇA - Material de Cleyton Souza - IFPB
PDF
SLIDES - AULA 7 - SWING - Cleyton Souza - IFPB
PPT
06_slide de Arquitetura_de_Software .ppt
PPTX
Aula_IoT internet das coisas para iniciantes
PPT
04_slide Requisitos de software_capitulo4
PPT
00_Apresentacao sobre o livro do sommerville_ES.ppt
PPT
09_Evolucao de software e_Refatoracao.ppt
10_ slides de Reuso sommerville cap 10.ppt
05_slide especificacao de sistemas de software e a uml UML.ppt
03_slide de Gerenciamento de Projetos .ppt
SLIDES - AULA 3 - CLASSES E OBJETOS EM JAVA - Material de Cleyton Souza - IFPB
07_slides de Estilos_Arquiteturais sommerville.ppt
SLIDES - AULA 1 - APRESENTAÇÃO - Material de Cleyton Souza - IFPB
SLIDES - AULA 2 - INTRODUÇÃO - Material de Cleyton Souza - IFPB
SLIDES - AULA 5 - HERANÇA - Material de Cleyton Souza - IFPB
SLIDES - AULA 7 - SWING - Cleyton Souza - IFPB
06_slide de Arquitetura_de_Software .ppt
Aula_IoT internet das coisas para iniciantes
04_slide Requisitos de software_capitulo4
00_Apresentacao sobre o livro do sommerville_ES.ppt
09_Evolucao de software e_Refatoracao.ppt

Microservices