How to do retry to target servers if it fails with 503. Retry three times and then respond to client
How to retry to target server given only one target server available. The retry should happen only
three times if we get 503 http status.
Solved! Go to Solution.
You should never do this. You should fail back to the client, and allow them to initiate a retry, and hopefully they're doing so with exponential backoff.
If you put the retry in apigee, what happens if your backend service is down for example?
1. For each request, you'll send 3 requests, it'll fail.
2. Your clients will retry those requests, and you'll try 3x again in addition to the new requests that you will now retry 3x.
3. When your backend recovers, there'll be a lot of traffic hitting it and will put excessive pressure on it, leading to performance issues or additional failures.
You should never do this. You should fail back to the client, and allow them to initiate a retry, and hopefully they're doing so with exponential backoff.
If you put the retry in apigee, what happens if your backend service is down for example?
1. For each request, you'll send 3 requests, it'll fail.
2. Your clients will retry those requests, and you'll try 3x again in addition to the new requests that you will now retry 3x.
3. When your backend recovers, there'll be a lot of traffic hitting it and will put excessive pressure on it, leading to performance issues or additional failures.
User | Count |
---|---|
7 | |
2 | |
2 | |
1 | |
1 |