¿Cómo se pueden solucionar los errores “429 Demasiadas solicitudes” o “Límite superado” de la API de API Gateway?
Al enviar solicitudes a la API de Amazon API Gateway, aparecen los errores “429 Demasiadas solicitudes” o “Límite superado”. ¿Cómo se solucionan estos errores?
Descripción breve
API Gateway tiene cuotas a nivel de cuenta, por región. La cuota de limitación es de 10 000 solicitudes por segundo (RPS) con una capacidad de ampliación adicional proporcionada por el algoritmo de bucket de token. La capacidad máxima del bucket es de 5000 solicitudes por cuenta y región. La configuración relacionada con la limitación controlada de API Gateway se aplica en el siguiente orden:
- Límites de limitación controlada por cliente o por método que se establecen para una etapa de la API en un plan de uso.
- Límites de limitación controlada por método que se establecen para una etapa de la API.
- Limitación controlada a nivel de cuenta por región.
- Limitación controlada en la región de AWS.
Si se excede el límite de limitación controlada o la cuota, se obtiene una respuesta de error “429 Demasiadas solicitudes” o “Límite superado”.
Para obtener más información, consulte ¿Cómo se aplica la configuración de límites de limitación controlada en API Gateway?.
Resolución
Antes de comenzar, asegúrese de haber seguido las instrucciones para activar los Registros de Amazon CloudWatch para solucionar los problemas de API Gateway. Asegúrese de seleccionar ERROR para generar registros de ejecución únicamente para las solicitudes a la API en las que se producen errores. A continuación, consulte las solicitudes y respuestas de la API registradas a través de la consola de CloudWatch.
Error “429 Demasiadas solicitudes”
Compruebe el límite de velocidad o de ampliación correspondiente a los límites de limitación controlada por cliente o por método que estableció para la etapa de la API respecto al plan de uso. Cuando se exceden los límites de velocidad o de ampliación, la ejecución de CloudWatch registra un error de límite de limitación controlada superado similar al siguiente:
(f277a0b4-2bcd-41b3-8e43-4de770663ffb) API Key ********************************** F0yrv6 exceeded throttle limit for API Stage rohkz08x02/dev: Key throttle limit exceeded for Usage Plan ID nnpegc, RestApi rohkz08x02, Stage dev, Resource f646q2, HttpMethod GET. Limit: 5.00 Burst: 10
Para resolver este error, utilice reintentos y un algoritmo de retroceso exponencial con fluctuación y, a continuación, vuelva a enviar la solicitud de la API.
Para obtener más información, consulte retroceso exponencial y fluctuación.
Error “Límite superado”
Este error puede indicar que se ha superado el límite de cuota correspondiente al plan de uso de API Gateway. Cuando se supera el límite de cuota, la ejecución de CloudWatch registra un error de límite de cuota superado similar al siguiente:
(7b819c41-e0a0-433a-883e-bc461fd70fd6) API Key ********************************** F0yrv6 exceeded quota limit for API Stage rohkz08x02/dev: Key quota exhausted for Usage Plan ID nnpegc. Q Limit: 500 Period: DAY
Para resolver este error, siga las instrucciones para ampliar la cuota restante.
Información relacionada
¿Cómo se encuentran los errores de la API de REST de API Gateway en los registros de CloudWatch?
Contenido relevante
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años