Exponential Backoff
リトライ時間を倍々にする奴
retries = 0
DO
wait for random from 0 to (2^retries * 100) milliseconds
status = Get the result of response
IF status = SUCCESS
retry = false
ELSE
retry = true
END IF
retries = retries + 1
WHILE (retry AND (retries < MAX_RETRIES))
上の例は0〜ランダム時間 なのでちょっと微妙に感じる