microservices from zero to hero - alexandru ioan cuza...
TRANSCRIPT
![Page 1: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/1.jpg)
May 16, 2017
DAN NASTASA
FLORIN OLARIU
Microservices from zero to hero
![Page 2: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/2.jpg)
AGENDA
• About Centric• “Italian” Architecture and Microservices • Onion and Spring• What Is a Microservice?• Building Monolithic Applications• Marching Toward Monolithic Hell• Microservices – Tackling the Complexity• The Benefits of Microservices• The Drawbacks of Microservices• Why Microservices?• Demo• About Centric Internship• Summary• Bibliography
May 16, 2017TITLE PRESENTATION
![Page 3: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/3.jpg)
ABOUT CENTRIC
May 16, 2017TITLE PRESENTATION
![Page 4: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/4.jpg)
ABOUT CENTRIC
• It is a Dutch company
May 16, 2017TITLE PRESENTATION
![Page 5: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/5.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio
May 16, 2017TITLE PRESENTATION
![Page 6: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/6.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio– Software solutions
May 16, 2017TITLE PRESENTATION
![Page 7: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/7.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio– Software solutions
– IT Outsourcing
May 16, 2017TITLE PRESENTATION
![Page 8: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/8.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio– Software solutions
– IT Outsourcing
– Business process outsourcing
May 16, 2017TITLE PRESENTATION
![Page 9: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/9.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio– Software solutions
– IT Outsourcing
– Business process outsourcing
– Staffing services
May 16, 2017TITLE PRESENTATION
![Page 10: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/10.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio– Software solutions
– IT Outsourcing
– Business process outsourcing
– Staffing services
• Geographic Area
May 16, 2017TITLE PRESENTATION
![Page 11: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/11.jpg)
ABOUT CENTRIC
• It is a Dutch company
• Portfolio– Software solutions
– IT Outsourcing
– Business process outsourcing
– Staffing services
• Geographic Area
May 16, 2017TITLE PRESENTATION
![Page 12: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/12.jpg)
“ITALIAN” ARCHITECTURE AND MICROSERVICES
May 16, 2017TITLE PRESENTATION
![Page 13: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/13.jpg)
“ITALIAN” ARCHITECTURE AND MICROSERVICES
May 16, 2017TITLE PRESENTATION
![Page 14: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/14.jpg)
“ITALIAN” ARCHITECTURE AND MICROSERVICES
May 16, 2017TITLE PRESENTATION
![Page 15: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/15.jpg)
“ITALIAN” ARCHITECTURE AND MICROSERVICES
May 16, 2017TITLE PRESENTATION
![Page 16: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/16.jpg)
ONION AND SPRING
May 16, 2017TITLE PRESENTATION
![Page 17: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/17.jpg)
ONION AND SPRING
• Domain Model layer, where our entities and classes closely
related to them e.g. value objects reside
May 16, 2017TITLE PRESENTATION
![Page 18: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/18.jpg)
ONION AND SPRING
• Domain Model layer, where our entities and classes closely
related to them e.g. value objects reside
• Domain Services layer, where domain-defined processes
reside
May 16, 2017TITLE PRESENTATION
![Page 19: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/19.jpg)
ONION AND SPRING
• Domain Model layer, where our entities and classes closely
related to them e.g. value objects reside
• Domain Services layer, where domain-defined processes
reside
• Application Services layer, where application-specific logic
i.e. our use cases reside
May 16, 2017TITLE PRESENTATION
![Page 20: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/20.jpg)
ONION AND SPRING
• Domain Model layer, where our entities and classes closely
related to them e.g. value objects reside
• Domain Services layer, where domain-defined processes
reside
• Application Services layer, where application-specific logic
i.e. our use cases reside
• Outer layer, which keeps peripheral concerns like UI,
databases or tests
May 16, 2017TITLE PRESENTATION
![Page 21: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/21.jpg)
ONION AND SPRING
May 16, 2017TITLE PRESENTATION
![Page 22: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/22.jpg)
ONION AND SPRING
May 16, 2017TITLE PRESENTATION
![Page 23: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/23.jpg)
ONION AND SPRING
May 16, 2017TITLE PRESENTATION
![Page 24: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/24.jpg)
WHAT IS A MICROSERVICE?
May 16, 2017TITLE PRESENTATION
![Page 25: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/25.jpg)
WHAT IS A MICROSERVICE?
May 16, 2017TITLE PRESENTATION
![Page 26: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/26.jpg)
WHAT IS A MICROSERVICE?
• “Microservices are a thing these days.”
Phil Calçado, former Director of Engineering, SoundCloud
May 16, 2017TITLE PRESENTATION
![Page 27: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/27.jpg)
WHAT IS A MICROSERVICE?
• “Microservices are small, autonomous services that work
together.”
Sam Newman, Thoughtworks
May 16, 2017TITLE PRESENTATION
![Page 28: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/28.jpg)
WHAT IS A MICROSERVICE?
• “Loosely coupled service-oriented architecture with bounded
contexts.”
Adrian Cockcroft, Battery Ventures
May 16, 2017TITLE PRESENTATION
![Page 29: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/29.jpg)
WHAT IS A MICROSERVICE?
• “A microservice is an independently deployable component of
bounded scope that supports interoperability through
message-based communication.”“Microservice Architecture-Aligning Principles, Practices, and Culture”
May 16, 2017TITLE PRESENTATION
![Page 30: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/30.jpg)
BUILDING MONOLITHIC APPLICATIONS
May 16, 2017TITLE PRESENTATION
![Page 31: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/31.jpg)
BUILDING MONOLITHIC APPLICATIONS
May 16, 2017TITLE PRESENTATION
![Page 32: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/32.jpg)
BUILDING MONOLITHIC APPLICATIONS
• These applications are simple to test and debug.
May 16, 2017TITLE PRESENTATION
![Page 33: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/33.jpg)
BUILDING MONOLITHIC APPLICATIONS
• These applications are simple to test and debug.
• These applications are also simple to deploy.
May 16, 2017TITLE PRESENTATION
![Page 34: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/34.jpg)
BUILDING MONOLITHIC APPLICATIONS
• These applications are simple to test and debug.
• These applications are also simple to deploy.
• These applications are scalable.
May 16, 2017TITLE PRESENTATION
![Page 35: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/35.jpg)
MARCHING TOWARD MONOLITHIC HELL
May 16, 2017TITLE PRESENTATION
![Page 36: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/36.jpg)
MARCHING TOWARD MONOLITHIC HELL
• In time the application become too complex.
May 16, 2017TITLE PRESENTATION
![Page 37: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/37.jpg)
MARCHING TOWARD MONOLITHIC HELL
• In time the application become too complex.
• Being too large is very difficult for any developer to fully
understand.
May 16, 2017TITLE PRESENTATION
![Page 38: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/38.jpg)
MARCHING TOWARD MONOLITHIC HELL
• In time the application become too complex.
• Being too large is very difficult for any developer to fully
understand.
• A large application is an obstacle to continuous deployment.
May 16, 2017TITLE PRESENTATION
![Page 39: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/39.jpg)
MARCHING TOWARD MONOLITHIC HELL
• In time the application become too complex.
• Being too large is very difficult for any developer to fully
understand.
• A large application is an obstacle to continuous deployment.
• Another problem with monolithic applications is reliability.
May 16, 2017TITLE PRESENTATION
![Page 40: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/40.jpg)
MICROSERVICES – TACKLING THE COMPLEXITY
May 16, 2017TITLE PRESENTATION
![Page 41: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/41.jpg)
MICROSERVICES – TACKLING THE COMPLEXITY
May 16, 2017TITLE PRESENTATION
![Page 42: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/42.jpg)
MICROSERVICES – TACKLING THE COMPLEXITY
May 16, 2017TITLE PRESENTATION
![Page 43: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/43.jpg)
MICROSERVICES – TACKLING THE COMPLEXITY
May 16, 2017TITLE PRESENTATION
![Page 44: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/44.jpg)
THE BENEFITS OF MICROSERVICES
May 16, 2017TITLE PRESENTATION
![Page 45: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/45.jpg)
THE BENEFITS OF MICROSERVICES
• It tackles the problem of complexity.
May 16, 2017TITLE PRESENTATION
![Page 46: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/46.jpg)
THE BENEFITS OF MICROSERVICES
• It tackles the problem of complexity.
• Enforces modularity.
May 16, 2017TITLE PRESENTATION
![Page 47: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/47.jpg)
THE BENEFITS OF MICROSERVICES
• It tackles the problem of complexity.
• Enforces modularity.
• Enables each service to be developed independently by a
team that is focused on that service.
May 16, 2017TITLE PRESENTATION
![Page 48: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/48.jpg)
THE BENEFITS OF MICROSERVICES
• It tackles the problem of complexity.
• Enforces modularity.
• Enables each service to be developed independently by a
team that is focused on that service.
• Enables each microservice to be deployed independently.
May 16, 2017TITLE PRESENTATION
![Page 49: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/49.jpg)
THE BENEFITS OF MICROSERVICES
• It tackles the problem of complexity.
• Enforces modularity.
• Enables each service to be developed independently by a
team that is focused on that service.
• Enables each microservice to be deployed independently.
• Enables each service to be scaled independently.
May 16, 2017TITLE PRESENTATION
![Page 50: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/50.jpg)
THE DRAWBACKS OF MICROSERVICES
May 16, 2017TITLE PRESENTATION
![Page 51: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/51.jpg)
THE DRAWBACKS OF MICROSERVICES
• The name itself.
May 16, 2017TITLE PRESENTATION
![Page 52: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/52.jpg)
THE DRAWBACKS OF MICROSERVICES
• The name itself.
• The complexity that arises from the fact that a microservices
application is a distributed system.
May 16, 2017TITLE PRESENTATION
![Page 53: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/53.jpg)
THE DRAWBACKS OF MICROSERVICES
• The name itself.
• The complexity that arises from the fact that a microservices
application is a distributed system.
• The partitioned database architecture.
May 16, 2017TITLE PRESENTATION
![Page 54: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/54.jpg)
THE DRAWBACKS OF MICROSERVICES
• The name itself.
• The complexity that arises from the fact that a microservices
application is a distributed system.
• The partitioned database architecture.
• Testing is also much more complex.
May 16, 2017TITLE PRESENTATION
![Page 55: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/55.jpg)
THE DRAWBACKS OF MICROSERVICES
• The name itself.
• The complexity that arises from the fact that a microservices
application is a distributed system.
• The partitioned database architecture.
• Testing is also much more complex.
• Deploying a microservices-based application is also much
more complex.
May 16, 2017TITLE PRESENTATION
![Page 56: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/56.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 57: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/57.jpg)
WHY MICROSERVICES?
• Gilt: “From Monolith Ruby App to Distributed Scala Micro-
Services” (NYC Tech Talks) [Link]
• Nike: “Nike’s Journey to Microservices” (AWS Re:Invent
2014) [Link]
• SoundCloud: ”Building Products at SoundCloud - Part III:
Microservices in Scala and Finagle” [Link]
• Capital One: “Lack Of Legacy Lets Capital One Build Nimble
Infrastructure” [Link]
• Hailo: “A Journey into Microservices” [Link]
• Autoscout24: “Why Autoscout24 changes its technology”
[Link]
• Zalando: “From Monolith to Microservices” [Link]
May 16, 2017TITLE PRESENTATION
![Page 58: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/58.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 59: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/59.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 60: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/60.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 61: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/61.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 62: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/62.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 63: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/63.jpg)
WHY MICROSERVICES?
May 16, 2017TITLE PRESENTATION
![Page 64: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/64.jpg)
DEMO
May 16, 2017TITLE PRESENTATION
![Page 65: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/65.jpg)
ABOUT CENTRIC INTERNSHIP
May 16, 2017TITLE PRESENTATION
![Page 66: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/66.jpg)
ONE MORE THING …
5/16/2017
![Page 67: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/67.jpg)
ONE MORE THING …
5/16/2017
![Page 68: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/68.jpg)
SUMMARY
5/16/2017
![Page 69: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/69.jpg)
SUMMARY
• Building complex applications is not an easy task.
5/16/2017
![Page 70: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/70.jpg)
SUMMARY
• Building complex applications is not an easy task.
• The Monolithic Architecture pattern only makes sense for
simple, lightweight applications.
5/16/2017
![Page 71: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/71.jpg)
SUMMARY
• Building complex applications is not an easy task.
• The Monolithic Architecture pattern only makes sense for
simple, lightweight applications.
• The Microservices Architecture pattern is the better choice for
complex, evolving applications, despite the drawbacks and
implementation challenges.
5/16/2017
![Page 72: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/72.jpg)
SUMMARY
• Building complex applications is not an easy task.
• The Monolithic Architecture pattern only makes sense for
simple, lightweight applications.
• The Microservices Architecture pattern is the better choice for
complex, evolving applications, despite the drawbacks and
implementation challenges.
• Probably the best way to define boundaries for microservices
is by using Bounded Context from DDD (Domain Driven
Design)
5/16/2017
![Page 73: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/73.jpg)
BIBLIOGRAPHY
5/16/2017
![Page 74: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/74.jpg)
BIBLIOGRAPHY
• Alagarasan, Vijay. “Seven Microservices Anti-patterns”, August 24, 2015.
• Cockcroft, Adrian. “State of the Art in Microservices”, December 4, 2014.
• Fowler, Martin. “Microservice Prerequisites”, August 28, 2014.• Fowler, Martin. “Microservice Tradeoffs”, July 1, 2015. • Humble, Jez. “Four Principles of Low-Risk Software Release”,
February 16, 2012. • Humble, Jez, Chris Read, and Dan North. “The Deployment
Production Line”. In Proceedings of the conference on AGILE 2006, 113– 118.
• IEEE Computer Society. Kniberg, Henrik, and Anders Ivarsson. “Scaling Agile at Spotify”, October 2012.
• http://microservices.io/patterns/microservices.html
5/16/2017
![Page 75: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/75.jpg)
BIBLIOGRAPHY
5/16/2017
![Page 76: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/76.jpg)
BIBLIOGRAPHY
5/16/2017
![Page 77: Microservices from zero to hero - Alexandru Ioan Cuza ...adiftene/Scoala/2017/IP/Cursuri/IP10.pdf · Microservices from zero to hero. ... •“Loosely coupled service-oriented architecture](https://reader034.vdocuments.net/reader034/viewer/2022042302/5ecd4cd4bdf3a53aec2fa8ec/html5/thumbnails/77.jpg)
QUESTIONS?