Share via


¿Qué es la limitación de frecuencia?

La limitación de velocidad es un mecanismo de control que usan las API en la nube para regular el número de solicitudes que un usuario puede realizar en un período de tiempo determinado. Los productores de API en la nube usan la limitación de velocidad para asegurarse de que el flujo de solicitudes no sobrecarga el servicio. La limitación de velocidad establece un límite en la velocidad y el volumen de llamadas API, que normalmente se definen en términos de solicitudes por período de tiempo.

¿Por qué las API en la nube usan la limitación de velocidad?

  • Evitar sobrecarga. La limitación de velocidad garantiza que el servidor de API permanezca estable y con capacidad de respuesta evitando que un único usuario o servicio lo inunde con demasiadas solicitudes.
  • Asegúrese de un uso justo. La limitación de velocidad aplica directivas de uso justo, lo que garantiza que ningún usuario único monopoliza los recursos de api, lo que permite el acceso equitativo a todos los usuarios.
  • Seguridad. Ayuda a mitigar ataques DDoS (denegación de servicio distribuido) y otros comportamientos abusivos al restringir el número de solicitudes de orígenes potencialmente malintencionados.
  • Cost Management. En el caso de los proveedores de servicios en la nube, la limitación de velocidad ayuda a administrar los costos operativos evitando un uso impredecible o excesivo de recursos.
  • Calidad de servicio. Al evitar picos de tráfico, la limitación de velocidad garantiza una calidad de servicio coherente para todos los usuarios.

Cómo experimenta la limitación de velocidad en las aplicaciones

Al compilar aplicaciones que integren API en la nube, consulte su documentación para comprobar si admiten la limitación de velocidad. Si lo hacen, recibirá RateLimit-... encabezados de respuesta o X-RateLimit-... con información sobre los límites de velocidad. Puede usar esta información en la aplicación para asegurarse de que no supera los límites de velocidad de la API. Por ejemplo, el RateLimit-Remaining encabezado indica el número de solicitudes restantes en la ventana actual. Si recibe una respuesta con este encabezado establecido en 0, sabe que ha alcanzado el límite de frecuencia y debe esperar a la siguiente ventana antes de enviar otra solicitud. El RateLimit-Reset encabezado indica la hora en que se restablece el límite de velocidad. Recuerde que algunas API solo envían los RateLimit-... encabezados después de alcanzar un umbral, por ejemplo, cuando tiene el 10 % de las solicitudes restantes.

Cuando se supera el límite de frecuencia, la API limita las solicitudes que devuelven un código de estado HTTP 429 (demasiadas solicitudes). Algunas API también pueden enviar un Retry-After encabezado que indique cuánto tiempo debe esperar antes de enviar otra solicitud.

Para evitar la limitación y asegurarse de que la aplicación sigue respondiendo, debe implementar la limitación de velocidad en la aplicación. En función de la pila de tecnología, hay diferentes bibliotecas que le ayudan a controlar la limitación de velocidad en la aplicación. Después de implementar la limitación de velocidad en la aplicación, pruebe si controla la limitación de velocidad correctamente.

Pasos siguientes