Dynamic Delivery Ingest Priority Queuing

In diesem Thema wird erläutert, wie die Prioritätseinstellung verwendet wird, um die Ingestionszeit für Videos mit hoher Priorität zu optimieren.

Einleitung

Dynamic Delivery Ingest verfügt jetzt über eine Funktion namens Prioritätswarteschlangen die es Publishern ermöglichen, Aufnahmejobs mit einer gewünschten Prioritätseinstellung an uns zu senden, um die Reihenfolge und Pünktlichkeit der Jobverarbeitung zu beeinflussen.

So funktioniert die Aufnahmewarteschlange für Dynamic Delivery

Bei einer Warteschlange mit normaler Priorität hat die dynamische Bereitstellungsaufnahme ein Limit von 100 aktiven Jobs pro Konto. Wenn dieses Limit überschritten wird, stellt das Aufnahmesystem zusätzliche Anforderungen zur späteren Verarbeitung in die Warteschlange. Die Größe der Warteschlange hat ein separates Limit, und wenn diese erreicht ist, wird die Aufnahmeanforderung an den Kunden zurückgewiesen (mit einem 429-Fehlercode). Wenn die Jobs beendet sind, wird Kapazität freigegeben und in der Warteschlange befindliche Jobs werden nacheinander in der Reihenfolge ihres Eingangs abgeholt und verarbeitet.

Der Videostatus in der CMS API spiegelt nicht wider, dass der Job in die Warteschlange gestellt wurde - der Status wird sein pending ob der Job verarbeitet oder in die Warteschlange gestellt wird.

Wie sich Priority Queuing auf die Aufnahme auswirkt

Priority Queuing ermöglicht es dem Benutzer, eine priority Flag für eine Aufnahmeanforderung. Die zulässigen Werte für priority sind low und normal . Jeder andere Wert führt dazu, dass die Anfrage mit einem 422-Fehlercode abgelehnt wird. Wenn der Benutzer keine Priorität angibt, wird der Standardwert von normal wird genutzt. Hier ist eine kurze Beschreibung, wie Priority Queuing die Verarbeitung von Jobs aus der Warteschlange ändert:

  1. Wenn keine Jobs in der Warteschlange vorhanden sind und Kapazitäten zum Ausführen eines Jobs vorhanden sind, wird der Job sofort ausgeführt. Dies gilt sowohl für Jobs mit niedriger als auch für normale Priorität.
  2. Wenn keine Kapazität für die Ausführung eines anderen Jobs vorhanden ist, wird der Job in die Warteschlange gestellt.
  3. Wenn sich Jobs in der Warteschlange befinden, werden auch alle neuen Jobs in die Warteschlange gestellt. Dies bedeutet, dass ein neuer Job nicht vor Jobs in der Warteschlange gestartet werden kann.
  4. Wenn die Kapazität zum Ausführen eines anderen Jobs vorhanden ist und Jobs in der Warteschlange vorhanden sind, wird ein Job aus der Warteschlange genommen:
    • Wenn sich IRGENDEINE Jobs mit normaler Priorität in der Warteschlange befinden, wird der älteste Job mit normaler Priorität ausgewählt.
    • Wenn sich KEINE Jobs mit normaler Priorität in der Warteschlange befinden, wird der älteste Job mit niedriger Priorität ausgewählt.
  5. Jobs mit normaler und niedriger Priorität werden wie folgt behandelt gleich für wie viele laufende Jobs es geben kann. Die Gesamtzahl der verarbeiteten Jobs ist unabhängig von ihrer Priorität auf 100 pro Konto begrenzt.
  6. Es gibt trennen Kontingente dafür, wie viele Jobs mit normaler und niedriger Priorität in die Warteschlange gestellt werden können.
  7. Jedes Konto ist auf 1000 anhängige Aufträge in der Warteschlange niedriger Priorität zu einem bestimmten Zeitpunkt begrenzt.
  8. Jedes Konto ist auf 1000 anhängige Aufträge in der normalen Prioritätswarteschlange zu einem bestimmten Zeitpunkt beschränkt.

Worauf Sie achten sollten

Wiedergabedetails wurden nach dem Senden eines Jobs geändert

Wenn Sie einen Dynamic Ingest-Job erstellen, wird das angegebene Ingest-Profil vom Dynamic Ingest-System kopiert, und dieses Profil Kopieren wird für die Verarbeitung verwendet, auch wenn das Profil seit dem Senden des Jobs geändert wurde.

Bei Jobs mit niedriger Priorität, bei denen die Verarbeitung in einigen Fällen erheblich verzögert werden kann, die in diesem Profil angegebenen Wiedergaben können geändert werden bevor der Auftrag tatsächlich bearbeitet wird. In diesem Fall werden die Wiedergabeversionen, die zum Verarbeiten des Videos verwendet werden, die NEU Definition dieser Wiedergaben; nicht die Definition der Wiedergaben zum Zeitpunkt der Auftragsübergabe.

Wenn Sie sicherstellen möchten, dass Sie die Formatvarianten so erhalten, wie sie bei der Einreichung des Auftrags angegeben wurden, sollten Sie Kopien der Formatvarianten erstellen und ein neues Profil erstellen, das auf diese kopierten Formatvarianten verweist, und dann den Erfassungsvorgang starten. (Sie können das Video mit dem aktualisierten Profil erneut transcodieren, wenn das Video bereits in Video Cloud gespeichert wurde. Denken Sie daran, dass Sie das Video nicht erneut transkodieren können, bis die Verarbeitung für den ursprünglichen Job abgeschlossen ist.)

Quelldatei-Upload

Beim Hochladen der Quelldatei werden die Dateien in diesem S3-Bucket nach 24 Stunden gelöscht. Da Jobs mit niedriger Priorität in einigen Fällen möglicherweise nicht länger als 24 Stunden verarbeitet werden, wurden die Dateien möglicherweise bereits gelöscht und die Verarbeitung schlägt in diesem Fall fehl. Wir empfehlen keine Aufnahme mit niedriger Priorität für das Hochladen von Quelldateien.

Musteranfragen

Unten sehen Sie ein Beispiel für einen Aufnahmeanforderungstext mit niedriger Priorität:

    {
    "master": {
    "url": "https://host/master.mp4"
    },
    "profile": "multi-platform-extended-static",
    "priority": "low",
    "callbacks": [
    "https://mydomain.com/di-callbacks.php"
    ]
    }
    
    

Und hier ist ein Beispiel für einen Job mit normaler Priorität:

    {
    "master": {
    "url": "https://host/master.mp4"
    },
    "profile": "multi-platform-extended-static",
    "priority": "normal",
    "callbacks": [
    "https://mydomain.com/di-callbacks.php"
    ]
    }
    
    

Beachten Sie, dass seit normal der Standardwert ist, würde die vorherige Anfrage genauso verarbeitet werden wie die folgende:

    {
    "master": {
    "url": "https://host/master.mp4"
    },
    "profile": "multi-platform-extended-static",
    "callbacks": [
    "https://mydomain.com/di-callbacks.php"
    ]
    }
    
    

Verwenden der Prioritätswarteschlange

Aus dem letzten Beispiel im vorherigen Abschnitt sollte klar sein, dass wenn Sie dies tun nicht benutze die priority Feld in Ihren Aufnahmeaufträgen, werden diese weiterhin genauso verarbeitet wie bisher.

Die Hinzufügung der priority Bereich profitieren Sie vor allem, wenn:

  1. Du nimmst eine ziemlich große Anzahl von Videos auf
  2. Es ist wichtig zu bekommen etwas Sie können Ihre Videos so schnell wie möglich online stellen, ohne dass andere veröffentlicht werden müssen (da der Inhalt weniger wichtig ist oder Sie die Videos ohnehin nicht sofort veröffentlichen möchten).
  3. Sie haben Videos, die Sie neu transkodieren möchten, aber Sie möchten nicht, dass dies die Aufnahme neuer Inhalte verlangsamt

So funktioniert die Warteschlange mit niedriger Priorität

In diesem Abschnitt wird erläutert, wie die Warteschlange mit niedriger Priorität funktioniert.

Es gibt keine Garantie, wann Jobs mit normaler oder niedriger Priorität gestartet werden. Jobs mit normaler Priorität werden jedoch immer vor Jobs mit niedriger Priorität gestartet.

Wenn Sie eine konstant hohe Rate an Aufträgen mit normaler Priorität senden, kann es einige Zeit dauern, bis Aufträge mit niedriger Priorität gestartet werden.

Der Start und die Verarbeitung von Jobs mit niedriger Priorität kann länger dauern als für das gleiche Video mit normaler Priorität.