You promise 99.9%. Your dependencies allow 99.83%.
transcript
Your service promises 99 point 9 percent. Your own dependencies make that impossible.
You depend on a database at 99 point 9 9. Which sits on storage, also 99 point 9 9. You call a payment provider at 99 point 9 5. Which calls a bank API at 99 point 9.
Your target: 99 point 9. Multiply them as independent, serial dependencies: 99 point 8 3. Below your own SLO.
You can't be more reliable than your least reliable critical dependency. More replicas of your own service don't change that maths.
So break the hard dependency. Provider down? Don't fail the request. Queue the payment instead. Or fail over to a second provider.
The notification platform does exactly this. Its email provider's SLA is only 99 point 5. The API still targets 99 point 9. Sends are queued, and can fail over.
A hard, synchronous dependency caps your SLO. Queue it, add a second one, or adjust your promise.
Full breakdown in the lecture.