Skip to main content
ONTAP Select
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Elaborazione asincrona tramite l'oggetto Job per ONTAP Select

Alcune chiamate API Deploy, in particolare quelle che creano o modificano una risorsa, possono richiedere più tempo rispetto ad altre. ONTAP Select Deploy elabora queste richieste di lunga durata in modo asincrono.

Richieste asincrone descritte utilizzando l'oggetto Job

Dopo aver effettuato una chiamata API 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 un'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, incluso il suo identificatore univoco.

Nota Per determinare quali chiamate API funzionano in modo asincrono, fare riferimento alla pagina della documentazione online ONTAP Select Deploy.

Interroga l'oggetto Job associato a una richiesta API

L'oggetto Job restituito nella risposta HTTP contiene diverse proprietà. È possibile interrogare la proprietà di stato per determinare se la richiesta è stata completata correttamente. Un oggetto Job può trovarsi in uno dei seguenti stati:

  • In coda

  • Corsa

  • Successo

  • Fallimento

Esistono due tecniche che è possibile utilizzare quando si interroga un oggetto Job per rilevare uno stato terminale per l'attività, ovvero successo o fallimento:

  • Richiesta di polling standard Lo stato del lavoro corrente viene restituito immediatamente

  • Richiesta di polling lungo Lo stato del lavoro viene restituito solo quando si verifica una delle seguenti situazioni:

    • Lo stato è cambiato più di recente rispetto al valore data-ora fornito nella richiesta di sondaggio

    • Il valore di timeout è scaduto (da 1 a 120 secondi)

Il polling standard e il polling lungo utilizzano la stessa chiamata API per interrogare un oggetto Job. Tuttavia, una richiesta di polling lungo include due parametri di query: poll_timeout E last_modified .

Suggerimento È consigliabile utilizzare sempre il polling lungo per ridurre il carico di lavoro sulla macchina virtuale Deploy.

Procedura generale per l'emissione di una richiesta asincrona

Per completare una chiamata API asincrona, è possibile utilizzare la seguente procedura di alto livello:

  1. Emettere la chiamata API asincrona.

  2. Ricevere una risposta HTTP 202 che indica l'accettazione corretta della richiesta.

  3. Estrarre l'identificatore per l'oggetto Job dal corpo della risposta.

  4. All'interno di un ciclo, eseguire quanto segue in ogni ciclo:

    1. Ottieni lo stato attuale del lavoro con una richiesta di sondaggio lungo

    2. Se il Job è in uno stato non terminale (in coda, in esecuzione), eseguire nuovamente il ciclo.

  5. Interrompere quando il lavoro raggiunge uno stato terminale (successo, fallimento).