External dependency
Third-party API (payments, email/SMS provider, maps) outside your control.
Problem it solves: Your availability is capped by theirs on synchronous paths.
Where it sits: Called by services.
When to use
- Capabilities you should not build.
When not to use
- Synchronously on a critical path without a timeout and fallback.
Failure modes
- Slowness consumes your threads; outages propagate.
Metrics to watch
- Dependency latency
- Error rate
- Timeouts
Alternatives
- Second provider (failover)
- Async via queue
Configuration in Labs (illustrative defaults)
- Base service time (ms) = 200 — Processing time per request at zero load. Queueing adds to this as utilisation rises.
- Availability (0–1) = 0.999 — Probability a call to this dependency succeeds (illustrative).
- Capacity per instance (req/s) = 1000 — Maximum requests one instance completes per second before it saturates.