Skip to content
Ameen Abozaid
Planned lessonMID-033-L07

Demo: a cascading failure, then the fix

  • Lesson 7 of 8
  • Mid-level
On This Lesson 3 topics

This lesson is planned. The outline below lists the topics it will cover. The full lesson has not been published yet.

In this lesson

break checkout with a slow payments, then contain it. Prepares MID-033-LAB1.

Draft outline details

Step by step

  1. Put Toxiproxy between orders and payments; run a load test on checkout and on GET /products.
  2. Add 5 s latency to the proxy: checkout hangs and product listing also slows as the pool fills.
  3. Add a 500 ms read timeout on the payments client; checkout fails fast but still hammers payments.
  4. Add a circuit breaker and a bulkhead for payments; repeat: failures are fast, product listing stays healthy.
  5. Planned mistake: configure the breaker to count 400 responses as failures; it opens on validation errors. Fix: record only timeouts and 5xx.
  6. Remove the latency and watch the breaker go half-open, then closed.

Practice

Apply this lesson with the module's lab, exercises and quiz.

Lab and exercises Quiz

Marking a lesson complete is optional and you can undo it any time. Your progress stays in this browser.

Continue to next lesson

Type to search levels, phases, modules and lessons.