Brace yourself, Microservicesare coming
microservices Google Trends
Gartner Hype Cycle
You are developing monolithsAll the functionality into a single process. Users, Products, Payments, Customers, etc. ?
Scaling the monolithLet's replicate this almost not used functionality on all the
nodes.
Loosely coupled service oriented architecture
with bounded contexts.
What's a MicroserviceIn short, the microservice architectural style is an approach todeveloping a single application as a suite of small services, eachrunning in its own process and communicating with lightweightmechanisms, often an HTTP resource API. These services are built around business capabilities andindependently deployable (...).
James Lewis & Martin Fowler
TL;DR
Scale the right functionality.
Scaling a Microservice
Haters gonna hateMicroservices in action:
cat /etc/passwd | grep "/bin/bash" | cut -d ":" -f 1 > users_using_bash
Unix - 1969
1 Microservice, 1 product
Independance: Lifecyles, Data management, Technos
From an API call to a network call:
ComplexityYou can move it about but it's still there!
Robert Annett: Where is the complexity?
LatencySerializationFault tolerance
Netflix and chill
(Circuit breaker), (Client-side load balancer), (Service Discovery), (Declarative Rest Client)
Hystrix RibbonEureka Feign
Be pragmaticSeducing benefits.
Not a free lunch!
Evaluate the Tech. & Org. feasability.
CreditsImages
Logo Clermont'echPulp FictionMeme GeneratorMicroservices a definition of this new architectural termMicroservices Google TrendWikipedia Gartner Hype CycleJuri Strumpflohner - Notes: Microservices by Martin FowlerWikipedia MicroservicesSpring Cloud Services for Pivotal Cloud FoundrySimon Brown tweetNormcoreplaty
Further readingsThe dark side of microservicesThe technical journey to microservices the new worldTen Best Practices from Sequoia's Microservices SummitDockercon State of the Art in MicroservicesMicroservices not a free lunch
Powered byReveal.jsYeoman Reveal.js GeneratorFont awesome