Skip to main content
ONTAP Select
Hay disponible una nueva versión de este producto.
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Procesamiento asincrónico mediante el objeto Job para ONTAP Select

Algunas llamadas a la API de Deploy, en particular las que crean o modifican un recurso, pueden tardar más en completarse que otras. ONTAP Select Deploy procesa estas solicitudes de larga duración de forma asincrónica.

Solicitudes asincrónicas descritas mediante el objeto Trabajo

Tras realizar una llamada a la API asincrónica, el código de respuesta HTTP 202 indica que la solicitud se ha validado y aceptado correctamente, pero aún no se ha completado. La solicitud se procesa como una tarea en segundo plano que continúa ejecutándose después de la respuesta HTTP inicial al cliente. La respuesta incluye el objeto Job que la ancla, incluyendo su identificador único.

Nota Debe consultar la página de documentación en línea de ONTAP Select Deploy para determinar qué llamadas API funcionan de forma asincrónica.

Consultar el objeto de trabajo asociado con una solicitud de API

El objeto Job devuelto en la respuesta HTTP contiene varias propiedades. Puede consultar la propiedad de estado para determinar si la solicitud se completó correctamente. Un objeto Job puede estar en uno de los siguientes estados:

  • En cola

  • Correr

  • Éxito

  • Falla

Hay dos técnicas que puede utilizar al sondear un objeto de trabajo para detectar un estado terminal para la tarea, ya sea éxito o fracaso:

  • Solicitud de sondeo estándar El estado actual del trabajo se devuelve inmediatamente

  • Solicitud de sondeo larga El estado del trabajo se devuelve solo cuando ocurre una de las siguientes situaciones:

    • El estado ha cambiado más recientemente que el valor de fecha y hora proporcionado en la solicitud de encuesta

    • El valor de tiempo de espera ha expirado (de 1 a 120 segundos)

El sondeo estándar y el sondeo largo utilizan la misma llamada API para consultar un objeto de trabajo. Sin embargo, una solicitud de sondeo largo incluye dos parámetros de consulta: poll_timeout y last_modified .

Consejo Siempre debe utilizar un sondeo largo para reducir la carga de trabajo en la máquina virtual de implementación.

Procedimiento general para emitir una solicitud asincrónica

Puede utilizar el siguiente procedimiento de alto nivel para completar una llamada API asincrónica:

  1. Emite la llamada API asincrónica.

  2. Recibir una respuesta HTTP 202 indicando la aceptación exitosa de la solicitud.

  3. Extraiga el identificador del objeto Trabajo del cuerpo de la respuesta.

  4. Dentro de un bucle, realice lo siguiente en cada ciclo:

    1. Obtenga el estado actual del trabajo con una solicitud de sondeo largo

    2. Si el trabajo está en un estado no terminal (en cola, en ejecución), realice el bucle nuevamente.

  5. Detenerse cuando el trabajo alcance un estado terminal (éxito, fracaso).