Capacidad de una instancia de Azure API Management

La capacidad la métrica de Azure Monitor más importante para tomar decisiones informadas acerca de si se debe escalar o actualizar una instancia de API Management para acomodar más carga. Su construcción es compleja e impone un comportamiento concreto.

En este artículo se explica lo que es la capacidad y su comportamiento. Muestra cómo acceder a la métrica de capacidad en Azure Portal y sugiere cuándo hay que considerar la posibilidad de escalar o actualizar una instancia de API Management.

Importante

En este artículo se describe cómo puede supervisar y escalar su instancia de Azure API Management en función de su métrica de capacidad. Sin embargo, es igualmente importante comprender lo que ocurre cuando una instancia individual de API Management ha alcanzado realmente su capacidad. Azure API Management no aplicará limites en el nivel de servicio para evitar una sobrecarga física de las instancias. Cuando una instancia alcanza su capacidad física, se comporta de forma similar a cualquier servidor web sobrecargado que no puede procesar las solicitudes entrantes: la latencia aumentará, se eliminarán las conexiones, se producirán errores de tiempo de espera, etc. Esto significa que los clientes de la API deben estar preparados para hacer frente a esta posibilidad como lo hacen con cualquier otro servicio externo (por ejemplo, mediante la aplicación de políticas de reintento).

Requisitos previos

Para seguir los pasos de este artículo, debe tener:

Disponibilidad

Importante

Esta característica está disponible en los niveles Premium, Estándar, Básico y Desarrollador de API Management.

Solo se puede añadir el máximo de la métrica de capacidad en el nivel Premium de API Management.

Para ver la disponibilidad de características en los niveles v2 (versión preliminar), consulte la información general de los niveles v2.

¿Qué es la capacidad?

Diagram that explains the Capacity metric.

La capacidad es un indicador de la carga de una instancia de API Management. Refleja el uso de recursos (CPU, memoria) y la longitud de las colas de red. El uso de la CPU y la memoria revela el consumo de recursos por:

  • Los servicios de plano de datos de API Management, como el procesamiento de solicitudes, lo que puede incluir el reenvío de solicitudes o la ejecución de una directiva.
  • Los servicios de plano de datos de API Management, como las acciones de administración aplicadas a través de Azure Portal o Azure Resource Manager, o la carga procedente del portal para desarrolladores.
  • Procesos seleccionados del sistema operativo, entre los que se incluyen los procesos que implican el costo de los protocolos de enlace TLS en las nuevas conexiones.
  • Actualizaciones de plataforma, como actualizaciones del sistema operativo en los recursos de proceso subyacentes para la instancia.
  • Número de API implementadas, independientemente de la actividad, que pueden consumir capacidad adicional.

La capacidad total es un promedio de sus propios valores de cada unidad de una instancia de API Management.

Aunque la métrica de capacidad está diseñada para solucionar problemas con la instancia de API Management, hay casos en los que los problemas no se reflejarán en los cambios en la métrica de capacidad.

Comportamiento de la métrica de capacidad

Dada su construcción, en la vida real la capacidad puede verse afectada por muchas variables, como por ejemplo:

  • patrones de conexión (conexión nueva en una solicitud frente a reutilización de la conexión existente)
  • tamaño de una solicitud y respuesta;
  • directivas configuradas en cada API o número de clientes que envían solicitudes.

Cuanto más complejas sean las operaciones de las solicitudes, más alto será el consumo de la capacidad. Por ejemplo, las directivas de transformación compleja consumen mucha más CPU que el reenvío de una solicitud simple. Las respuestas lentas al servicio del back-end también la incrementarán.

Importante

La capacidad no es una medida directa del número de solicitudes que se procesan.

Capacity metric spikes

La capacidad también puede tener picos intermitentes o ser mayor que cero aunque no se procesen solicitudes. Esto sucede debido a acciones específicas del sistema o de la plataforma, y no debe tenerse en cuenta al decidir si se escala una instancia.

Una métrica de capacidad baja no implica necesariamente que la instancia de API Management no experimente ningún problema.

Uso de Azure Portal para examinar la capacidad

Capacity metric

  1. Vaya a la instancia de API Management en Azure Portal.

  2. En el menú de la izquierda, en Supervisión, seleccione Métricas.

  3. Seleccione la métrica Capacidad de las métricas disponibles y deje la agregación Avg predeterminada.

    Sugerencia

    Si ha implementado la instancia en varias ubicaciones, siempre debe examinar un desglose de métricas de capacidad por ubicación para evitar interpretaciones incorrectas.

  4. Para dividir la métrica por ubicación, en la sección de la parte superior, seleccione Aplicar división y, a continuación, seleccione Ubicación.

  5. Elija el período que desee en la barra superior de la sección.

    Puede establecer una alerta de métrica que le avise cuando ocurra algo inesperado. Por ejemplo, reciba notificaciones cuando su instancia de API Management haya superado su capacidad máxima prevista durante más de 20 minutos.

    Sugerencia

    Puede configurar alertas para que le avisen cuando su servicio se esté quedando sin capacidad o usar el autoescalado de Azure Monitor para agregar automáticamente una unidad de Azure API Management. La operación de escalado puede tardar unos 30 minutos, por lo que debe planear las reglas en consecuencia.
    Solo se permite el escalado de la ubicación maestra.

Uso de la capacidad para decidir acerca del escalado

La capacidad la métrica de para tomar decisiones acerca de si se debe escalar una instancia de API Management para acomodar más carga. A continuación se indican consideraciones generales:

  • Observe la tendencia y la media a largo plazo.
  • Ignore los picos repentinos que probablemente no estén relacionados con un aumento de la carga (consulte la sección Comportamiento de la métrica de capacidad para obtener una explicación).
  • Como regla general, actualice o escale la instancia cuando el valor de capacidad supere el 60 % - 70 % durante un largo período de tiempo (por ejemplo, 30 minutos). Para su servicio o escenario es posible que sean más apropiados otros valores.
  • Si la instancia está configurada con solo 1 unidad, actualice o escale la instancia cuando el valor de capacidad supere el 40 % durante un largo período. Esta recomendación se basa en la necesidad de reservar capacidad para las actualizaciones del sistema operativo invitado en la plataforma de servicio subyacente.

Sugerencia

Si puede calcular el tráfico de antemano, pruebe su instancia de API Management en las cargas de trabajo que espera. Puede aumentar la carga de solicitudes de su inquilino gradualmente y controlar el valor de la métrica de capacidad que corresponde a su carga máxima. Siga los pasos de la sección anterior para usar Azure Portal para saber la capacidad que se utiliza en un momento dado.

Pasos siguientes