Compartir vía


Incorporación del almacenamiento en caché para mejorar el rendimiento en Azure API Management

SE APLICA A: Desarrollador | Básico | Básico v2 | Estándar | Standard v2 | Premium |Premium v2

Las API y operaciones de API Management pueden configurarse con almacenamiento en caché de respuesta. El almacenamiento en caché de respuesta puede reducir considerablemente la latencia de los llamadores de API y la carga de back-end de los proveedores de API.

Importante

La caché integrada es volátil y se comparte entre todas las unidades de la misma región del mismo servicio de API Management. Independientemente del tipo de caché que se use (interna o externa), si las operaciones relacionadas con la caché no se pueden conectar a la memoria caché debido a la volatilidad de la caché o a cualquier otro motivo, la llamada API que usa la operación relacionada con la caché no genera un error y la operación de caché se completa correctamente. En el caso de una operación de lectura, se devuelve un valor null a la expresión de directiva que realiza la llamada. El código de directiva se debe diseñar para asegurarse de que hay un mecanismo de "reserva" para recuperar los datos no encontrados en la memoria caché. Para más información acerca del almacenamiento en caché, consulte directivas de Almacenamiento en caché de API Management y Almacenamiento en caché personalizado en Azure API Management.

directivas de caché

Temas que se abordarán:

  • Agregar almacenamiento en caché de respuesta a una API
  • Comprobar el almacenamiento en caché en acción

Nota:

La memoria caché interna no está disponible en el nivel Consumo de Azure API Management. Puede usar una instancia externa de Azure Redis Cache en su lugar. También puede configurar una caché externa en otros niveles de servicio de API Management.

Requisitos previos

Para completar este tutorial:

Adición de las directivas de almacenamiento en caché

Con las directivas de almacenamiento en caché que se muestran en este ejemplo, la primera solicitud a una operación de prueba devuelve una respuesta del servicio back-end. Dicha respuesta se almacena en la caché, con una clave especificada mediante encabezados y parámetros de la cadena de consulta. Las siguientes llamadas a la operación, con parámetros coincidentes, devolverán la respuesta almacenada en caché hasta que el intervalo de duración en la caché haya expirado.

  1. Inicie sesión en Azure Portal.

  2. Vaya a la instancia de API Management.

  3. Seleccione API>API en el menú de la izquierda.

  4. Seleccione la API para la que desea configurar el almacenamiento en caché.

  5. En la parte superior de la pantalla, seleccione la pestaña Diseño.

  6. En la sección Procesamiento de entrada, seleccione el icono </>. Captura de pantalla del editor de directivas de API Management en el portal.

  7. En el elemento inbound, agregue la siguiente directiva:

    <cache-lookup vary-by-developer="false" vary-by-developer-groups="false">
        <vary-by-header>Accept</vary-by-header>
        <vary-by-header>Accept-Charset</vary-by-header>
        <vary-by-header>Authorization</vary-by-header>
    </cache-lookup>
    
  8. En el elemento outbound, agregue la siguiente directiva:

    <cache-store duration="20" />
    

    En esta directiva, el valor de duración especifica el intervalo de expiración de las respuestas almacenadas en caché. En este ejemplo, el intervalo es 20 segundos.

Sugerencia

Si usa una memoria caché externa, como se describe en Uso de una memoria caché de Redis externa en Azure API Management, es posible que desee especificar el atributo caching-type de las directivas de almacenamiento en caché. Consulte Directivas de almacenamiento en caché de API Management para más detalles.

Llamada a una operación y prueba del almacenamiento en caché

Para ver cómo funciona el almacenamiento en caché, llame a una operación desde el portal.

  1. En Azure Portal, vaya a la instancia de API Management.
  2. Seleccione API>API en el menú de la izquierda.
  3. Seleccione la API a la que ha agregado directivas de almacenamiento en caché.
  4. Seleccione una operación para probar.
  5. Seleccione la pestaña Probar del menú superior derecho.
  6. Seleccione Seguimiento dos o tres veces de manera seguida y rápida.
  7. En Respuesta HTTP, seleccione la pestaña Seguimiento.
  8. Vaya a la sección Entrante y desplácese hasta la directiva cache-lookup. Debería ver un mensaje similar al de la siguiente captura de pantalla, indicando un acierto de caché: Captura de pantalla de la búsqueda en caché al probar una API en el portal.