A Jornada de um Desenvolvedor do
Monolito aos Microserviços
Edson Yanaga
Director of Developer Experience
@yanaga
Join developers.redhat.com2
Java Champion Microsoft MVP
@yanaga
“Now, every company is a software company”
— Forbes
Join developers.redhat.com4
“The two most important days in your life
are the day you are born and the day you
find out why.” — Mark Twain
Software é feito por pessoas
para pessoas
Legado
Todo código colocado em
produção é Legado
Feedback
Loop
Mais rápido.
Maior quantidade.
Melhor.
Join developers.redhat.com11
Contexto
Qual a sua desculpa para não
entregar software mais rápido?
Bugs Testing
Problemas de Integração Continuous Integration
Deployment Manual Continuous Delivery
Problemas de Integração!!! Microservices
Estamos escalando pessoas, não
software
Sistemas distribuídos são difíceis,
mas pessoas também são
Estamos reduzindo os problemas de
integração ao reduzir o contexto a um
Microserviço coeso
Join developers.redhat.com17
Lei de Conway
Join developers.redhat.com
“organizations which design systems (…) are
constrained to produce designs which are
copies of the communication structures of
these organizations.”
19
Join developers.redhat.com20
“Two Pizza Rule” — Jeff Bezos
Onde eu implanto meus
Microserviços?
PaaS
Buy or Build?
Join developers.redhat.com24
Join developers.redhat.com25
E por onde eu começo minha
jornada?
Join developers.redhat.com
Strangler
Application
27
Domain-Driven Design
Bounded Contexts
Join developers.redhat.com29
Join developers.redhat.com30
Join developers.redhat.com31
Wildfly Swarm
Spring Boot
Node.js
Join developers.redhat.com
API Gateway
32
Join developers.redhat.com33
Join developers.redhat.com34
API Gateway
“reliability must come from software”
— Jeff Dean (Google)
Join developers.redhat.com
Design for Failure
36
Join developers.redhat.com37
Circuit Breaker
Bulkhead
Smart Routing
Join developers.redhat.com
Síncrono ou Assíncrono?
39
HTTP/REST or Message Broker?
Join developers.redhat.com
E as consultas/relatórios?
41
Command Query
Responsibility Segregation
(CQRS)
&
Event Sourcing
Join developers.redhat.com43
http://teiid.jboss.org
Lembre-se que é uma jornada…
E estamos nos primeiros
passos…
Quer conhecer o caminho?
Inscreva-se em
developers.redhat.com
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews
Obrigado!

TDC2016SP - Trilha Microservices