SlideShare a Scribd company logo
1 of 11
Download to read offline
Service level
overkill
Service levels in a world of SOA
mick@reliably.com
$ whoami
Senior engineer @ Reliably
Live in the UK but (thanks to COVID19) I work anywhere, any-when
Worked in tech for 12 years, in dev, ops and product management
I was once chased up a tree by a disgruntled bovine
SL*
SLA: legal chicanery that can get you sued.
SLO: a goal used by the team operating a service to measure its
performance.
SLI: a measurement of activity over time that can be used to
calculate the actual performance of the service.
A service level applies to any system that has a user.
The SOA connection
The world of modern tech is a bowl of service-spaghetti.
A system that depends on another service becomes beholden to
that service's service level.
Crunching the numbers
n = (a x b) x 100
n = the aggregate service level
a = the individual service level
b = the product of the service level agreement(s) of a service(s) you
depend upon
e.g. your service has an SLO of 99.5%, and you depend on 2 services
with an SLA of 99.95% and 99% respectively.
n = (0.995 x (0.9995 x 0.99)) x 100
n = 98.46%
Its not that simple...
Not every path through your system may depend on every
dependency
You may be able to engineer resiliency
Not all dependencies are equal
Architecting a better SLO
Handling transient errors
The impact of a retry mechanism:
Without retry: (0.999 x 0.99) x 100 = 98.9%
With 3 retries: (0.999 x (1 - (1 - 0.99) / 3)) x 100 = 99.6%
Make sure you send the correct status codes - 503 FTW!!
Architecting a better SLO
Handling transactional errors
Become transactionally transparent.
user -> request a mutation -> {time passes...} -> handle request -> inform user
Super powerful, but changes the user experience.
Existing tools and patterns like event bus or webhook can be used to achieve an event-
driven mutation.
AVOID DISTRIBUTED TRANSACTIONS WHEREVER POSSIBLE.
Architecting a better SLO
Caching
The 2 hardest things in software engineering are naming things and cache
expiration
Please utilise cache control headers
And now, the end is near...
In a world of networked services, no service level stands alone.
Try to build your services in such a way that your users are given the best
opportunity to use your service well.
Don't be afraid of downtime - no system can offer 100% uptime, and its
exceptionally expensive to try!
Thats all, folks!

More Related Content

Similar to Service Level Objectives and SRE: Service Level Overkill with Mick Roper

Autosys Trainer CV
Autosys Trainer CVAutosys Trainer CV
Autosys Trainer CV
DS gupta
 

Similar to Service Level Objectives and SRE: Service Level Overkill with Mick Roper (20)

Why DevOps Needs to Embrace Distributed Tracing
Why DevOps Needs to Embrace Distributed TracingWhy DevOps Needs to Embrace Distributed Tracing
Why DevOps Needs to Embrace Distributed Tracing
 
Low latency microservices in java QCon New York 2016
Low latency microservices in java   QCon New York 2016Low latency microservices in java   QCon New York 2016
Low latency microservices in java QCon New York 2016
 
Lesson02 - Network Design & LAN
Lesson02 - Network Design & LANLesson02 - Network Design & LAN
Lesson02 - Network Design & LAN
 
Architectural Commandments for Building & Running Microservices at Scale
Architectural Commandments for Building & Running Microservices at ScaleArchitectural Commandments for Building & Running Microservices at Scale
Architectural Commandments for Building & Running Microservices at Scale
 
End-to-End Security in Mobile-Cloud Computing
End-to-End Security in Mobile-Cloud ComputingEnd-to-End Security in Mobile-Cloud Computing
End-to-End Security in Mobile-Cloud Computing
 
Cloud Native & Service Mesh
Cloud Native & Service MeshCloud Native & Service Mesh
Cloud Native & Service Mesh
 
Service Virtualization - Next Gen Testing Conference Singapore 2013
Service Virtualization - Next Gen Testing Conference Singapore 2013Service Virtualization - Next Gen Testing Conference Singapore 2013
Service Virtualization - Next Gen Testing Conference Singapore 2013
 
Microservices for performance - GOTO Chicago 2016
Microservices for performance - GOTO Chicago 2016Microservices for performance - GOTO Chicago 2016
Microservices for performance - GOTO Chicago 2016
 
Using SLOs for Continuous Performance Optimizations of Your k8s Workloads
Using SLOs for Continuous Performance Optimizations of Your k8s WorkloadsUsing SLOs for Continuous Performance Optimizations of Your k8s Workloads
Using SLOs for Continuous Performance Optimizations of Your k8s Workloads
 
Designing apps for resiliency
Designing apps for resiliencyDesigning apps for resiliency
Designing apps for resiliency
 
Actor model in F# and Akka.NET
Actor model in F# and Akka.NETActor model in F# and Akka.NET
Actor model in F# and Akka.NET
 
Fault tolerance
Fault toleranceFault tolerance
Fault tolerance
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS
 
Site reliability in the Serverless age - Serverless Boston 2019
Site reliability in the Serverless age  - Serverless Boston 2019Site reliability in the Serverless age  - Serverless Boston 2019
Site reliability in the Serverless age - Serverless Boston 2019
 
Web Performance BootCamp 2013
Web Performance BootCamp 2013Web Performance BootCamp 2013
Web Performance BootCamp 2013
 
Operations: Production Readiness Review – How to stop bad things from Happening
Operations: Production Readiness Review – How to stop bad things from HappeningOperations: Production Readiness Review – How to stop bad things from Happening
Operations: Production Readiness Review – How to stop bad things from Happening
 
karthik
karthikkarthik
karthik
 
attachment_3998 (3).pdf
attachment_3998 (3).pdfattachment_3998 (3).pdf
attachment_3998 (3).pdf
 
Autosys Trainer CV
Autosys Trainer CVAutosys Trainer CV
Autosys Trainer CV
 
Web Performance Bootcamp 2014
Web Performance Bootcamp 2014Web Performance Bootcamp 2014
Web Performance Bootcamp 2014
 

More from Russell Miles

More from Russell Miles (9)

Don't be a victim of your own success: Using Service Levels to give a Consist...
Don't be a victim of your own success: Using Service Levels to give a Consist...Don't be a victim of your own success: Using Service Levels to give a Consist...
Don't be a victim of your own success: Using Service Levels to give a Consist...
 
From Chaos to Verification at Expedia Group, London
From Chaos to Verification at Expedia Group, LondonFrom Chaos to Verification at Expedia Group, London
From Chaos to Verification at Expedia Group, London
 
Break stuff - Confessions of a misguided chaos engineer
Break stuff - Confessions of a misguided chaos engineerBreak stuff - Confessions of a misguided chaos engineer
Break stuff - Confessions of a misguided chaos engineer
 
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
 
How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)
 
Production Microservices @ Jazoon
Production Microservices @ JazoonProduction Microservices @ Jazoon
Production Microservices @ Jazoon
 
Chaos Engineering 101 by Russ Miles
Chaos Engineering 101 by Russ MilesChaos Engineering 101 by Russ Miles
Chaos Engineering 101 by Russ Miles
 
Applying Machine Learning and Artificial Intelligence to Business
Applying Machine Learning and Artificial Intelligence to BusinessApplying Machine Learning and Artificial Intelligence to Business
Applying Machine Learning and Artificial Intelligence to Business
 
The Future of Machine Learning
The Future of Machine LearningThe Future of Machine Learning
The Future of Machine Learning
 

Recently uploaded

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Recently uploaded (20)

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 

Service Level Objectives and SRE: Service Level Overkill with Mick Roper

  • 1. Service level overkill Service levels in a world of SOA mick@reliably.com
  • 2. $ whoami Senior engineer @ Reliably Live in the UK but (thanks to COVID19) I work anywhere, any-when Worked in tech for 12 years, in dev, ops and product management I was once chased up a tree by a disgruntled bovine
  • 3. SL* SLA: legal chicanery that can get you sued. SLO: a goal used by the team operating a service to measure its performance. SLI: a measurement of activity over time that can be used to calculate the actual performance of the service. A service level applies to any system that has a user.
  • 4. The SOA connection The world of modern tech is a bowl of service-spaghetti. A system that depends on another service becomes beholden to that service's service level.
  • 5. Crunching the numbers n = (a x b) x 100 n = the aggregate service level a = the individual service level b = the product of the service level agreement(s) of a service(s) you depend upon e.g. your service has an SLO of 99.5%, and you depend on 2 services with an SLA of 99.95% and 99% respectively. n = (0.995 x (0.9995 x 0.99)) x 100 n = 98.46%
  • 6. Its not that simple... Not every path through your system may depend on every dependency You may be able to engineer resiliency Not all dependencies are equal
  • 7. Architecting a better SLO Handling transient errors The impact of a retry mechanism: Without retry: (0.999 x 0.99) x 100 = 98.9% With 3 retries: (0.999 x (1 - (1 - 0.99) / 3)) x 100 = 99.6% Make sure you send the correct status codes - 503 FTW!!
  • 8. Architecting a better SLO Handling transactional errors Become transactionally transparent. user -> request a mutation -> {time passes...} -> handle request -> inform user Super powerful, but changes the user experience. Existing tools and patterns like event bus or webhook can be used to achieve an event- driven mutation. AVOID DISTRIBUTED TRANSACTIONS WHEREVER POSSIBLE.
  • 9. Architecting a better SLO Caching The 2 hardest things in software engineering are naming things and cache expiration Please utilise cache control headers
  • 10. And now, the end is near... In a world of networked services, no service level stands alone. Try to build your services in such a way that your users are given the best opportunity to use your service well. Don't be afraid of downtime - no system can offer 100% uptime, and its exceptionally expensive to try!