Depende do que você está tentando evitar.
Se você está tentando evitar qualquer interrupção no serviço de algo que seja genuinamente crítico (estou pensando em termos de "as pessoas morrerão se minha chamada à API não for atendida adequadamente"), você precisará apenas fazer um orçamento para as enormes ineficiências que provêm muito do provisionamento de recursos dedicados. E sim, eles precisam ser dedicados, nada disso permite coisas de picos de tráfego, o picos de vários serviços causaria uma interrupção.
No cenário muito mais provável em que o serviço está sendo interrompido, seria inconveniente que você possa resolver o problema do lado do cliente e do servidor. Embora seja interessante notar que é logicamente impossível resolver o problema de muito tráfego, porque sem processar o tráfego (que consome recursos) você não pode saber se é uma nova tentativa, se é uma nova tentativa de uma solicitação que foi bem-sucedida, mas que foi tratada incorretamente pelo cliente, se for um DDOS, etc. Mas você pode mitigar o impacto.
No código do cliente, escreva uma lógica de repetição sensata, que possui um limite superior e um mecanismo para falhas delicadas. Dessa forma, você não coloca seus usuários em um loop infinito de solicitações com falha e apenas gera um erro dizendo a eles para tentarem o que eles fizeram em pouco tempo.
Para a infraestrutura do servidor, a solução mais simples é acelerar. Limites rígidos em solicitações, especialmente se você puder tentar espalhá-las logicamente com base em seu caso de uso específico (por exemplo, se você tiver um serviço centralizado tomar algumas decisões difíceis, deseja começar a bloquear solicitações geograficamente distantes que possam resultar em interrupções de encadeamento do lado do servidor? Ou você deseja distribuir sua inevitável, mas menor interrupção de maneira uniforme? etc) Tudo se resume ao fato de que retornar um 503 intencionalmente de um gateway é muito mais barato do que deixar a solicitação passar e enviar um 504 de qualquer forma. Basicamente, force os clientes a se comportarem com base no que você pode fornecer atualmente e forneça as respostas corretas para que os clientes possam reagir adequadamente.