Six Little Lines of Fail
Offered By: NDC Conferences via YouTube
Course Description
Overview
Explore the complexities of distributed systems in this insightful conference talk that delves into the challenges of implementing a seemingly simple checkout page. Learn how six lines of code can hide potential failures and system-wide issues. Discover strategies for building resilient distributed systems, including examining inevitable failures, addressing coupling in code, and refactoring towards a truly robust checkout process. Gain valuable insights into handling failures between systems, dealing with external resources like payment gateways and email services, and implementing patterns such as routing slip, saga, and process manager. Understand the importance of embracing the fallacies of distributed computing and planning for worst-case scenarios to create more reliable and fault-tolerant applications.
Syllabus
Intro
6 little, innocuous lines of code
Failure is ALWAYS an option
We can't put the world into a transaction
Assume failures
Plan for the worst
4 options for dealing with failures between two systems
The Master Plan
For each external resource, examine possibilities and pick best option based on business requirements
First up: Stripe
Retry
Undo
Option 4: Coordinate
Next up: SendGrid
Apologize?
Finally: RabbitMQ
Compensating message is... weird
Taking a step back
Can we avoid exceptions by breaking the process coupling?
Still not there...
Starting the workflow
Routing slip
Saga pattern
Process manager pattern
Orchestration or choreography?
Taught by
NDC Conferences
Related Courses
DevOps Foundations: Chaos EngineeringLinkedIn Learning Remember When We Broke the Internet
Strange Loop Conference via YouTube Diocletian, Constantine, Bedouin Sayings, and Network Defense
Strange Loop Conference via YouTube Architectural Patterns of Resilient Distributed Systems
Strange Loop Conference via YouTube Don't Follow Leaders or - All Models Are Wrong - and So Am I
USENIX via YouTube