Patterns for Building Resilient Microservices
Published by O'Reilly Media, Inc.
Improve the robustness of systems and resilience of teams
Course outcomes:
- Understand what leads to system failures
- Get practical tips to make your microservice architecture more robust
- Learn when and where to use certain stability patterns
- Gain an awareness of supporting tools and technology that can help
- Be better prepared for the unexpected
Course description:
Join microservices expert Sam Newman for a look at the concept of resiliency as a whole—that is, going beyond how to handle expected issues to exploring the cultural and behavioral changes that are essential to creating a resilient system. You’ll follow this discussion with a deep dive into a variety of stability patterns that can help make your microservice architecture much more robust in meeting the increasingly rigorous expectations of users.
What you’ll learn and how you can apply it
- Use patterns to improve your system’s overall stability
This live event is for you because...
- You’re responsible for a microservice architecture in production and want to understand how to improve its robustness.
- You’re a technical leader who wants to understand how you can be more resilient as a team.
- You’re building a distributed system like a microservice architecture and want to understand how to build mechanisms into your system to improve robustness.
Prerequisites
- Experience working on production systems or being involved in a massive production outage (useful, but not required)
Recommended preparation:
- Take Microservice Fundamentals (live online course with Sam Newman)
Recommended follow-up:
- Read “From Monitoring to Observability” and “Resiliency” (chapters 10 and 12 in Building Microservices, second edition)
- Read Release It!, second edition (book)
- Take Architecture Patterns for Resilient Distributed Systems (live online course with Rohit Bhardwaj)
Schedule
The time frames are only estimates and may vary according to how the class is progressing.
What is resiliency? (15 minutes)
- Who’s worked on a system that had a serious production issue, such as an outage?
- Presentation: Robustness; rebound; graceful extensibility; sustained adaptability
Failure is everywhere (15 minutes)
- Presentation: Rare things are common at scale; an error doesn’t mean a failure; deciding on acceptable tolerances (error budget); knowing you have an issue (further reading: “Security,” chapter 11 in Building Microservices, second edition)
The human factor (15 minutes)
- Presentation: Blame and blame culture; creating a learning environment; software as a sociotechnical system
The golden rule(s) (20 minutes)
- Presentation: The two golden rules of distributed computing; ask yourself, what happens if this thing isn’t there?
- Break
Stability patterns—and problems (70 minutes)
- How many of these stability patterns have you used before?
- Presentation: Isolation; retries and idempotency; redundancy; timeouts (including budgeted timeout); bulkheads; circuit breakers; backpressure; load shedding and the thundering herd; the role of brokers
- Break
CAP theory—just enough (20 minutes)
- Presentation: Shopping example; ticket example; It’s all about trade-offs
Chaos engineering (10 minutes)
Wrap-up and Q&A (15 minutes)
Your Instructor
Sam Newman
Sam Newman is a technologist focusing on the areas of cloud, microservices, and continuous delivery—three topics which seem to overlap frequently. He provides consulting, training, and advisory services to startups and large multinational enterprises alike, drawing on his more than 20 years in IT as a developer, sysadmin, and architect.Sam is the author of the best-selling Building Microservices (now in its second edition) and Monolith To Microservices, both from O’Reilly, and is also an experienced conference speaker.