Antipatrón: permitir un backend lento

Estás consultando la documentación de Apigee y Apigee Hybrid.
Consulta la documentación de Apigee Edge.

Los sistemas de backend ejecutan los servicios a los que acceden los proxies de APIs. Es decir, son la razón fundamental de la existencia de las APIs y de la capa de proxy de gestión de APIs.

Cualquier solicitud a la API que se enruta a través de la plataforma Apigee sigue una ruta típica antes de llegar al backend:

  • La solicitud procede de un cliente, que puede ser cualquier cosa, desde un navegador hasta una aplicación.
  • A continuación, la recibe la pasarela de Apigee.
  • Se procesa en la pasarela. Como parte de este proceso, la solicitud se transfiere a varios componentes distribuidos.
  • A continuación, la pasarela dirige la solicitud al backend que responde a la solicitud.
  • La respuesta del backend recorre el camino inverso exacto a través de la pasarela de Apigee hasta el cliente.

Por determinar

De hecho, el rendimiento de las solicitudes a la API enrutadas a través de Apigee depende tanto de Apigee como de los sistemas backend. En este antipatrón, nos centraremos en el impacto en las solicitudes de API debido a sistemas backend con un rendimiento deficiente.

Antipatrón

Veamos el caso de un backend problemático. Estas son las posibilidades:

  • Backend de tamaño inadecuado
  • Backend lento
  • Backend de tamaño inadecuado

    El problema de exponer los servicios de estos sistemas backend a través de APIs es que un gran número de usuarios finales pueden acceder a ellos. Desde el punto de vista empresarial, se trata de un reto deseable, pero que hay que afrontar.

    Muchas veces, los sistemas backend no están preparados para esta demanda adicional de sus servicios y, por lo tanto, tienen un tamaño insuficiente o no están optimizados para ofrecer respuestas eficientes.

    El problema de un backend con un tamaño inadecuado es que, si hay un pico en las solicitudes de API, se sobrecargarán los recursos, como la CPU, la carga y la memoria, de los sistemas de backend. Esto provocaría que las solicitudes a la API fallaran.

    Backend lento

    El problema de un backend mal configurado es que tardaría mucho en responder a cualquier solicitud que le llegara, lo que provocaría un aumento de la latencia, tiempos de espera prematuros y una experiencia de cliente deficiente.

    La plataforma Apigee ofrece algunas opciones ajustables para evitar y gestionar el backend lento. Sin embargo, estas opciones tienen limitaciones.

    Impacto

    • Si el backend no tiene el tamaño adecuado, el aumento del tráfico podría provocar errores en las solicitudes.
    • En el caso de un backend lento, la latencia de las solicitudes aumentará.

    Práctica recomendada

    • Usa el almacenamiento en caché para guardar las respuestas, mejorar los tiempos de respuesta de la API y reducir la carga del servidor backend.
    • Resuelve el problema subyacente de los servidores backend lentos.

    Más información