TDC2016SP - Trilha Microservices

Preview:

Citation preview

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!