Intermediate
A slow payment provider
Checkout calls a payment provider that answers in 380 ms, fails now and then, and rate-limits you. Customers must get an instant confirmation and nobody may ever be charged twice.
300 orders per second at peak. The order page can say 'payment in progress' and confirm by email a few seconds later.
What your design must achieve
- Availability ≥ 99.9 %
- Writes p99 < 250 ms
- Worst queue lag < 120 s
- Background jobs that failed = 0
- Duplicated side effects = 0