Designing for failure
summary
Claims concrete fixes: set timeouts with context cancellation on clients and servers (avoid default Go http client), use avast-retry-go for retries and heimdall-style isolation, combine circuit breakers + retries with exponential backoff and thresholds (trip after 3 failures, ratio >0.6). Instrument with Prometheus/Jaeger or OpenTelemetry, use distributed rate limiting backed by Redis/Dynamo, apply service mesh with Envoy/Istio to offload timeouts/retries/circuit breaking. Provides a Go “coffee shop” repo plus Terraform/Helm templates that embed these patterns for immediate reuse.
AI-written summary · about
chapters (6)
- 0:00Start
- 7:29Latency Control
- 23:11Self Healing
- 30:30Observability
- 33:35That's a lot of things
- 34:11Service Mesh








