Skip to main content
ONTAP Select
Eine neuere Version dieses Produkts ist erhältlich.
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Asynchrone Verarbeitung mit dem Job-Objekt für ONTAP Select

Einige Deploy-API-Aufrufe, insbesondere solche zum Erstellen oder Ändern einer Ressource, können länger dauern als andere Aufrufe. ONTAP Select Deploy verarbeitet diese lang laufenden Anfragen asynchron.

Asynchrone Anforderungen, beschrieben mithilfe des Job-Objekts

Nach einem asynchron ausgeführten API-Aufruf zeigt der HTTP-Antwortcode 202 an, dass die Anfrage erfolgreich validiert und akzeptiert, aber noch nicht abgeschlossen wurde. Die Anfrage wird als Hintergrundaufgabe verarbeitet, die nach der ersten HTTP-Antwort an den Client weiterläuft. Die Antwort enthält das Job-Objekt, das die Anfrage verankert, einschließlich seiner eindeutigen Kennung.

Hinweis Um zu ermitteln, welche API-Aufrufe asynchron ausgeführt werden, sollten Sie auf der Online-Dokumentationsseite von ONTAP Select Deploy nachsehen.

Abfragen des mit einer API-Anforderung verknüpften Job-Objekts

Das in der HTTP-Antwort zurückgegebene Job-Objekt enthält mehrere Eigenschaften. Sie können die Statuseigenschaft abfragen, um festzustellen, ob die Anforderung erfolgreich abgeschlossen wurde. Ein Job-Objekt kann einen der folgenden Zustände aufweisen:

  • In der Warteschlange

  • Wird ausgeführt

  • Erfolg

  • Versagen

Es gibt zwei Techniken, die Sie beim Abfragen eines Job-Objekts verwenden können, um einen Endzustand für die Aufgabe zu erkennen (entweder Erfolg oder Misserfolg):

  • Standard-Polling-Anfrage Aktueller Jobstatus wird sofort zurückgegeben

  • Der Auftragsstatus für lange Polling-Anfragen wird nur zurückgegeben, wenn eines der folgenden Ereignisse eintritt:

    • Der Status hat sich vor dem in der Abfrageanforderung angegebenen Datums-/Uhrzeitwert geändert.

    • Timeout-Wert ist abgelaufen (1 bis 120 Sekunden)

Standard-Polling und Long-Polling verwenden denselben API-Aufruf zum Abfragen eines Job-Objekts. Eine Long-Polling-Anforderung enthält jedoch zwei Abfrageparameter: poll_timeout Und last_modified .

Tipp Sie sollten immer Long Polling verwenden, um die Arbeitslast auf der virtuellen Bereitstellungsmaschine zu reduzieren.

Allgemeine Vorgehensweise zum Ausgeben einer asynchronen Anfrage

Sie können das folgende allgemeine Verfahren verwenden, um einen asynchronen API-Aufruf abzuschließen:

  1. Führen Sie den asynchronen API-Aufruf aus.

  2. Erhalten Sie eine HTTP-Antwort 202, die die erfolgreiche Annahme der Anfrage anzeigt.

  3. Extrahieren Sie die Kennung für das Job-Objekt aus dem Antworttext.

  4. Führen Sie innerhalb einer Schleife in jedem Zyklus Folgendes aus:

    1. Holen Sie sich den aktuellen Status des Jobs mit einer Long-Poll-Anfrage

    2. Wenn sich der Job in einem nicht-terminalen Zustand befindet (in der Warteschlange, läuft), führen Sie die Schleife erneut aus.

  5. Stoppen Sie, wenn der Job einen Endzustand (Erfolg, Fehler) erreicht.