The Amazon Builderβs Library is a great set of deep dive papers into the challenges with modern systems. This post highlights some of the challenges that the retry pattern presents.
The paper, βMaking retries safe with idempotent APIs, follows-up yesterdayβs thread on the, βTimeouts, retries, and backoff with jitterβ paper.
This one takes a much deeper dive into the challenges that a simple retry poses to an API. Itβs all about balancing the customer experience with the systemsβ stability & performance.
I call out a few more details in the Twitter thread belowβ¦
π: https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
this is a level 300 paper, digging a bit deeper than yesterday's' level 200
π§΅βοΈ #cloud #devops @awscloud
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 2/9 π Next tweet π Start
yesterday's thread is up at https://markn.ca/2021/timeouts-retries-and-backoff-with-jitter/
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 3/9 π Next tweet π Start
if you're unfamiliar, in this context it means that you can run operations more than once and the results won't change
more at https://en.wikipedia.org/wiki/Idempotence
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 4/9 π Next tweet π Start
basically, how can the backend service make sure that retry doesn't end up being a duplicate or something worse
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 5/9 π Next tweet π Start
followed by, "a surprisingly large number of transient or random faults can be overcome by simply retrying the call"
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 6/9 π Next tweet π Start
it then moves on to a topic that isn't discussed enough; reducing complexity
the author discusses API design & how @awscloud uses an identifier handled by the SDKs to manage retries
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 7/9 π Next tweet π Start
π uses @awscloud EC2 as an example & this really helps drive some of these key points home
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 8/9 π Next tweet π Start
π explores these challenges & explains how @awscloud looks at making reasonable trade offs to handle
π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39
Tweet 9/9 π Next tweet π Start
however, these patterns & tips can help you replicate this pattern in your services to deliver a better customer experience
worth the π to read
/π§΅βοΈ #cloud #devops
@marknca tweeted at 09-Nov-2021, 13:39