Scopri come Active IQ Unified Manager utilizza gli oggetti Job per l'elaborazione asincrona
Active IQ Unified Manager fornisce l' `jobs`API che recupera informazioni sui Job eseguiti durante l'utilizzo di altre API. Devi conoscere il funzionamento dell'elaborazione asincrona tramite l'oggetto Job.
Alcune chiamate API, in particolare quelle utilizzate per aggiungere o modificare risorse, possono richiedere più tempo per essere completate rispetto ad altre. Unified Manager elabora queste richieste di lunga durata in modo asincrono.
Richieste asincrone descritte tramite l'oggetto Job
Dopo aver effettuato una chiamata API che viene eseguita in modo asincrono, il codice di risposta HTTP 202 indica che la richiesta è stata convalidata e accettata correttamente, ma non è ancora stata completata. La richiesta viene elaborata come attività in background che continua a essere eseguita dopo la risposta HTTP iniziale al client. La risposta include l'oggetto Job che ancora la richiesta, compreso il suo identificatore univoco.
Interroga l'oggetto Job associato a una richiesta API
L'oggetto Job restituito nella risposta HTTP contiene diverse proprietà. È possibile interrogare la proprietà state per determinare se la richiesta è stata completata con successo. Un oggetto Job può trovarsi in uno dei seguenti stati:
-
NORMAL -
WARNING -
PARTIAL_FAILURES -
ERROR
Esistono due tecniche che è possibile utilizzare per interrogare un oggetto Job e rilevare lo stato finale dell'attività, ovvero successo o fallimento:
-
Richiesta di polling standard: lo stato corrente del Job viene restituito immediatamente.
-
Richiesta di long polling: quando lo stato del lavoro passa a
NORMAL, ERROR,oPARTIAL_FAILURES.
Passaggi in una richiesta asincrona
È possibile utilizzare la seguente procedura high-level per completare una chiamata API asincrona:
-
Effettua la chiamata API asincrona.
-
Ricevi una risposta HTTP 202 che indica l'accettazione della richiesta.
-
Estrai l'identificativo dell'oggetto Job dal corpo della risposta.
-
All'interno di un ciclo, attendi che l'oggetto Job raggiunga lo stato terminale
NORMAL, ERROR,oPARTIAL_FAILURES. -
Verifica lo stato finale del Job e recupera il risultato del Job.