Presentations
Templates
Features
Teams
Pricing
Log in
Sign up
Log in
Sign up
Menu
Highly available software
Guillaume Simard
Coveo
Team Lead
Infrastructure de usage data
Infrastructure de machine learning
200M+
900K+
1500+
THAT'S A LOT
OF
NUTS
REQUESTS!
Highly available software
Comment rester disponible en tout temps?
DESIGN
FOR
FAILURE
Add redundancy
Avoid state
Handle exceptions
Have a fallback plan
Async > Sync
A.A.H.H.A. !
Add redundancy
Add redundancy
Add redundancy
Avoid State
State sucks.
Avoid State
Use Immutability
Avoid sharing objects between requests
Avoid State
If you have to, save state in a shared thing
Handle Exceptions
Force yourself to document possible exceptions
Can happen on every interaction with another service
Distinguish between client side and server side errors
Every unhandled server side error is a bug
Have a Fallback Plan
Always have a Plan B
Async > Sync
Asynchronous leads to scalable
TL;DR
High Availability is hard
careers.coveo.com
source.coveo.com
?
High Availability + Cloud
By Guillaume Simard
Made with Slides.com
High Availability + Cloud
1,158
Guillaume Simard
guisim
More from
Guillaume Simard