Retry strategy
A payment confirmation API times out now and then. A junior engineer opened a PR that says "if it fails, send it three more times." What would you point out?
A payment confirmation API times out now and then. A junior engineer opened a PR that says "if it fails, send it three more times." What would you point out?
A timeout means the server may already have processed the request, so resending a non-idempotent payment as-is can charge twice, and retrying immediately makes an outage worse. Don't retry without an idempotency key.
NetworkingShort answerAdvanced
The user taps the send money button, and the signal drops right after the request goes…
#retry #idempotency
NetworkingMultiple choiceAdvanced
A payment confirmation request, POST /payments, failed with URLError.timedOut. Select all…
#retry #idempotency
NetworkingMultiple choiceBasics
An idempotent GET request failed. Select all the failures where an automatic retry (with…
#retry
ConcurrencyShort answerAdvanced
Using Swift Concurrency (async/await, actors), design the API of a network client that…
#retry