SlideShare a Scribd company logo
1
MICROSERVICES AND CHECKLISTS
OVERHYPE AND IMPORTANCE
Katrin Shechtman, Lightbend / @katrinsh
2
MY RELEVANT BACKGROUND
2003 - 2004
OpenMP, MPI, distributed
Matlab
2006-2012
J2EE, Spring
Proprietary Distributed Computing
software in C/C++
2012-2016
Play, Scala,
Akka
3
THEN CAME MICROSERVICES
I THOUGHT MICROSERVICES ARE A
PRIVATE CASE OF DISTRIBUTED
SYSTEM
THEY APPLY WHEN POLYGLOT COMPONENTS
ARE REQUIRED AND SOME LATENCY COULD
BE TOLERATED IN FAVOUR OF SCALABILITY
4
WHY THIS TALK
THE AMOUNT OF MISPERCEPTION
SUGGESSTIONS SUCH AS 'DEVELOP
MONOLITH AS LONG AS YOU CAN'
EXPECTING DIFFERENT RESULTS FROM
DOING THE SAME WITH SAME
TECHNOLOGIES
5
IMAGINARY E-COMMERCE
6
A PERFECT SERVER
DI with same resolution
JPA with less than ideal
performance
5% CPU utilization
PERFECT UNTIL LOAD INCREASES
BUT WHAT ABOUT HORIZONTAL SCALING?
78
WHAT ABOUT COST EFFICIENCY?
AT LEAST YOU MADE SOMEONE HAPPY
In short, the microservice
architectural style [1] is an
approach to developing a
single application as a suite
of small services, each
running in its own process
and communicating with
lightweight mechanisms, often
an HTTP resource API.
-- Martin Fowler
These services are built
around business capabilities
and independently deployable
by fully automated deployment
machinery. There is a bare
minimum of centralized
management of these services,
which may be written in
different programming
languages and use different
data storage technologies.
-- Martin Fowler
910
11
MICROSERVICES TO THE RESCUE
Shopping cart and search are services
Different departments are services
I don't care what language to use (for
the sake of this talk ...)
12
PERFECT MICROSERVICES ?
HOW LONG DOES SEARCH TAKE?
100 millis X N of services
13
"LESS THAN PERFECT"
MICROSERVICES BUT CONTINUE
HOW LONG DOES SEARCH TAKE?
100 millis X N of healthy services
+ time 1 X unhealthy service 1 + ...
14
DID MICROSERVICES FAIL ?
15
MULTI-THREADING, ASYNC I/O
1 thread x threads
Synch
I/O
100 mls x N
of services
100 mls * ceil(N
of services / x)
Asynch
I/O
100 mls 100 mls
16
MICROSERVICES DID NOT FAIL
WE JUST DID IT WRONG, LET'S DO IT RIGHT
QUIZ: HOW LONG DOES SEARCH TAKE NOW?
17
MICROSERVICES - PERFECT AGAIN ?
NO, WELCOME TO DISTRIBUTED MONOLITH
18
SHORT DEFINITIONS WON'T SUFFICE
CLOUD, CHANGE CYCLES OR
SCALING ARE NOT A GOAL
NOR IS IT A COMPLETE LIST
19
THE GOAL IS
RESPONSIVINESS
20
RESILIENCE, SCALABILITY AND
CONTINUOUS DELIVERY ARE CORE
DESIGN PRINCIPLES
UMBRELLA FOR MORE NESTED PRINCIPLES
21
SKIPPING OVER ISN'T AN OPTION
22
CONTINUOUS DELIVERY
GOAL: VELOCITY
Code isolation
Independent
deployment
DevOps
23
SCALABILITY
GOAL: RESPONSIVINESS
CPU utilization
Componentization
Disclaimer: according to Google Componentization is ...
Quiz: AR vs BC ?
Data isolation
DevOps
24
RESILIENCE AT ALL LEVELS
GOAL: RESPONSIVINESS
Asynchronous Communication
Question: What is asynchronous communication?
Componentization
DevOps
25
ELASTICITY
System could both expand and shrink dynamically
COST EFFICIENCY
Scalability
Appropriate infrastructure on-prem or
wise choice of cloud provider
26
CLOUD
COST EFFICIENCY
AND WE USUALLY RENT IT FURNISHED
ALL PRINCIPLES ARE IMPORTANT
2728
PRICE OF SKIPPING
29
MICROSERVICES' PRICE TAG
We should design again
We should be smart, it is not only about
right configuration anymore
We should consolidate: monitoring,
logging, etc (but not databases
remember?)
We should support DevOps or become one:
deployment, cluster management etc,
right technologies are super important
Debugging is not hard, we just need to
do it differently and we need tools
30
CHOICE OF TOOLS
THE RULE: THE TOOL(S) SHOULD
NOT BREAK ANY PRINCIPLE
MENTIONED BEFORE
Take a look at Lagom, not the song, the
opinionated (based on principles)
microservices framework
31
THANK YOU!
QUESTIONS?
MORE INFO ABOUT LAGOM:
HTTP://WWW.LAGOMFRAMEWORK.COM
Twitter: @katrish

More Related Content

PPTX
Monitoring OpenStack? Piece of cake!
PPTX
OpenStack Full Stack Monitoring and Troubleshooting
PDF
Anomaly detection in real-time data streams using Heron
PDF
Murphys laws for Observability
PDF
Observe 2020-d mc
DOC
Thoufeeq CV 2016.
PDF
2013.09.03 Preseason Ref Meeting
PPTX
Presentacion ple
Monitoring OpenStack? Piece of cake!
OpenStack Full Stack Monitoring and Troubleshooting
Anomaly detection in real-time data streams using Heron
Murphys laws for Observability
Observe 2020-d mc
Thoufeeq CV 2016.
2013.09.03 Preseason Ref Meeting
Presentacion ple

Similar to Microservices: The danger of overhype and importance of checklists (20)

PDF
Trends in development distributed systems
PPTX
CMU Lecture on Hadoop Performance
PPTX
Strata New York 2012
PPTX
Cmu Lecture on Hadoop Performance
PPTX
The "Why", "What" & "How" of Microservices - short version
PDF
Why ∆Q is the ideal network metric
KEY
Cassandra EU 2012 - Putting the X Factor into Cassandra
PDF
Pets vs. Cattle: The Elastic Cloud Story
PDF
EDCC14 Keynote, Newcastle 15may14
PDF
A Systematic Approach to Creating Behavioral Models (white paper) v1.0
DOCX
The Era of MicroServers
PPTX
Gupta_Keynote_VTDC-3
PDF
Actor model in F# and Akka.NET
PDF
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
PDF
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
PDF
Stateful on Stateless - The Future of Applications in the Cloud
PDF
Reproducible Emulation of Analog Behavioral Models
PPTX
O'Reilly Webinar: Simplicity Scales - Big Data
PPTX
Reactive by example (DevOpsDaysTLV 2019)
PPTX
Seminar 12-11-19
Trends in development distributed systems
CMU Lecture on Hadoop Performance
Strata New York 2012
Cmu Lecture on Hadoop Performance
The "Why", "What" & "How" of Microservices - short version
Why ∆Q is the ideal network metric
Cassandra EU 2012 - Putting the X Factor into Cassandra
Pets vs. Cattle: The Elastic Cloud Story
EDCC14 Keynote, Newcastle 15may14
A Systematic Approach to Creating Behavioral Models (white paper) v1.0
The Era of MicroServers
Gupta_Keynote_VTDC-3
Actor model in F# and Akka.NET
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
Stateful on Stateless - The Future of Applications in the Cloud
Reproducible Emulation of Analog Behavioral Models
O'Reilly Webinar: Simplicity Scales - Big Data
Reactive by example (DevOpsDaysTLV 2019)
Seminar 12-11-19
Ad

More from Reactivesummit (6)

PPTX
Distributed stream processing with Apache Kafka
PDF
Reactive Polyglot Microservices with OpenShift and Vert.x
PDF
Orchestrated Chaos: Applying Failure Testing Research at Scale.
PDF
The Zen Of Erlang
PDF
Monolith to Reactive Microservices
PPTX
Back-Pressure in Action: Handling High-Burst Workloads with Akka Streams & Ka...
Distributed stream processing with Apache Kafka
Reactive Polyglot Microservices with OpenShift and Vert.x
Orchestrated Chaos: Applying Failure Testing Research at Scale.
The Zen Of Erlang
Monolith to Reactive Microservices
Back-Pressure in Action: Handling High-Burst Workloads with Akka Streams & Ka...
Ad

Recently uploaded (20)

PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
cuic standard and advanced reporting.pdf
PPTX
Cloud computing and distributed systems.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Spectroscopy.pptx food analysis technology
PDF
KodekX | Application Modernization Development
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Chapter 3 Spatial Domain Image Processing.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Advanced methodologies resolving dimensionality complications for autism neur...
cuic standard and advanced reporting.pdf
Cloud computing and distributed systems.
Mobile App Security Testing_ A Comprehensive Guide.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Unlocking AI with Model Context Protocol (MCP)
20250228 LYD VKU AI Blended-Learning.pptx
Machine learning based COVID-19 study performance prediction
Spectral efficient network and resource selection model in 5G networks
Diabetes mellitus diagnosis method based random forest with bat algorithm
“AI and Expert System Decision Support & Business Intelligence Systems”
Per capita expenditure prediction using model stacking based on satellite ima...
Spectroscopy.pptx food analysis technology
KodekX | Application Modernization Development
Encapsulation_ Review paper, used for researhc scholars
MIND Revenue Release Quarter 2 2025 Press Release
sap open course for s4hana steps from ECC to s4
Chapter 3 Spatial Domain Image Processing.pdf

Microservices: The danger of overhype and importance of checklists