Agrega la política de Spike Arrest a tu API

Esta página se aplica a Apigee y Apigee Hybrid.

Consulta la documentación de Apigee Edge.

Qué aprenderás

En este instructivo, aprenderás a realizar lo siguiente:

  • Agrega una política que afecte la solicitud y respuesta
  • Consulta los efectos de la política.

Qué necesitará

Agrega la política de Spike Arrest

En este instructivo, agregarás y configurarás la política de SpikeArrest para proteger el servicio de destino contra aumentos repentinos de tráfico que pueden deberse a un aumento del uso, de los clientes defectuosos o de los ataques maliciosos. Cuando la cantidad de solicitudes supera el límite de frecuencia, la API muestra un error HTTP 429.

Agrega la política de Spike Arrest a un proxi de API:

  1. En la consola de Google Cloud , ve a la página Apigee > Desarrollo de proxy > Proxies de API.

    Ir a Proxies de API

    Si seguiste el instructivo Comenzar, puedes agregarlo al proxy de API que creaste en Crea un proxy de API.

  2. Haz clic en la pestaña Desarrollar:
  3. En el panel de la izquierda, haz clic en el botón + en la fila Políticas.
  4. En laCrear política haz clic en elSelecciona un tipo de política y desplázate hacia abajo hastaAdministración del tráfico y seleccioneProtección contra aumentos de tráfico.

  5. De manera opcional, puedes cambiar el Nombre y el Nombre visible de la política. De forma predeterminada, Apigee proporciona un prefijo corto para el nombre de la política, en este caso, SA-. Puedes agregar una secuencia de palabras descriptivas, separadas por guiones, después del prefijo. Consulta Convenciones de nombres.

    Crear cuadro de diálogo de la política.

    Cuando hayas terminado, haz clic en Crear para crear la política.

Ahora que creaste la política de Spike Arrest, puedes agregarla a un paso en el PreFlow.

  1. Selecciona Proxy Endpoints > default > PreFlow en el panel izquierdo:

    Extremos de destino para PreFlow seleccionados en el Explorador de proxy.

    Nota: Es posible que debas expandir el editor visual en el panel de la derecha para ver todos los elementos. Para ello, haz clic y arrastra el divisor entre el editor visual y el editor de texto un poco hacia abajo.

  2. Haz clic en el botón + junto a PreFlow en el panel Respuesta en la esquina inferior derecha del editor visual:

    Haz clic en el botón + junto al PreFlow en el panel Respuesta.

  3. En el cuadro de diálogo Agregar paso de la política, selecciona la política Spike Arrest.
  4. Haz clic en Agregar para adjuntar la política.

    La política de Spike Arrest se muestra en el panel Respuesta:

    Política de Spike Arrest que se muestra en el panel de respuesta.

Ahora que adjuntaste la política de Spike Arrest al PreFlow, puedes intentar cambiar el código para la política:

  1. En el panel Response, selecciona SA-.

    Política de Spike Arrest que se muestra en la pestaña Políticas.

  2. El editor de texto muestra el código XML del proxy, incluido el paso de la política de Spike Arrest en el elemento Respuesta del flujo previo.
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <SpikeArrest continueOnError="false" enabled="true" name="SA-">
        <DisplayName>SA-</DisplayName>
        <Properties/>
        <Identifier ref="request.header.some-header-name"/>
        <MessageWeight ref="request.header.weight"/>
        <Rate>30ps</Rate>
    </SpikeArrest>
  3. En el XML de la política, cambia el valor del elemento <Rate> a 1pm (que se traduce en aproximadamente dos solicitudes permitidas cada 60 segundos en la nube).

    Puedes especificar la tasa como un valor de número entero por minuto (pm) o por segundo (ps). Este es un límite muy bajo y solo se usa para este instructivo a fin de demostrar la política. Por lo general, se establece en un límite mucho más alto.

    Ten en cuenta que el valor de Rate en el inspector de propiedades también cambia a 1pm. Como alternativa, puedes cambiar el valor de Rate en el Inspector de propiedades y se reflejará en la vista XML.

  4. Haga clic en Save para guardar la revisión actual con sus cambios.