View a markdown version of this page

Grenzen der Funktionen - AWS Elemental MediaTailor

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Grenzen der Funktionen

Auf dieser Seite sind die Grenzwerte aufgeführt, die für Funktionen gelten. Diese Grenzwerte werden bei der Erstellung (wenn Sie eine Funktion erstellen oder aktualisieren) und zur Laufzeit (wenn die Funktion ausgeführt wird) durchgesetzt.

Einschränkungen bei der Hook-Ausführung

Haken Limit Wert
PRE_SESSION_INITIALIZATION Gesamtes Timeout 2.000 ms
PRE_SESSION_INITIALIZATION player_paramsGesamtgröße 1.000 Zeichen
PRE_ADS_REQUEST Gesamtes Timeout 2.000 ms
POST_ADS_RESPONSE Gesamtes Timeout 2.000 ms
POST_ADS_RESPONSE Größe der eingegebenen Nutzlast 128 KB
POST_ADS_RESPONSE Größe der Ausgabe 256 KB
PRE_MANIFEST_INSERTION Gesamtes Timeout 2.000 ms
PRE_MANIFEST_INSERTION Größe der eingegebenen Nutzlast 128 KB
PRE_MANIFEST_INSERTION Größe der Ausgabe 256 KB
PRE_MANIFEST_INSERTION Injizierte Anzeigen pro Aufruf 10
Request-path Hooks kombiniert (pro Anfrage) Gemeinsames Budget für die Ausführung 2.000 ms

Diese Timeouts decken die gesamte Hook-Ausführung ab, einschließlich aller Funktionsschritte und HTTP-Aufrufe. Wenn der Hook seinen Timeout überschreitet, MediaTailor verwirft er die gesamte Ausgabe und geht so vor, als ob keine Funktion angehängt wäre.

Zusätzlich zum Timeout jedes Hooks teilen sich die Hooks, PRE_ADS_REQUESTPOST_ADS_RESPONSE, und PRE_MANIFEST_INSERTION Hooks, die innerhalb einer einzelnen Anforderung ausgeführt werden, zusammen ein Ausführungsbudget von 2.000 ms. Die Zeit, die von einem früheren Hook aufgewendet wurde, reduziert das Budget, das für spätere Hooks in derselben Anfrage zur Verfügung steht, und der effektive Timeout eines Hooks ist der kleinere Wert aus seinem eigenen Timeout und dem verbleibenden Budget. Wenn das Budget aufgebraucht ist, bevor ein Hook beginnt, wird dieser Hook vollständig MediaTailor übersprungen und die Bearbeitung der Anfrage fortgesetzt. PRE_SESSION_INITIALIZATIONwird während der Sitzungsinitialisierung ausgeführt und ist nicht Teil des Gesamtbudgets.

Die Größenbeschränkung für die Eingabe-Nutzlast gilt für die serialisierte JSON-Eingabe, die für die MediaTailor POST_ADS_RESPONSE UND-Hooks erstellt wird. PRE_MANIFEST_INSERTION Wenn die Eingabe 128 KB überschreitet, wird der Hook-Aufruf für diese Anforderung MediaTailor übersprungen. Die Beschränkung der Ausgabegröße begrenzt die gesamte serialisierte Größe, die eine Funktion in den beschreibbaren Namespace des Hooks schreiben kann. Ausgaben, die 256 KB überschreiten, werden verworfen.

Einzelne Funktions-Timeouts (z. B. RequestTimeoutMilliseconds für HTTP_REQUEST-Funktionen) müssen innerhalb des Gesamt-Timeouts des Hooks liegen. Wenn das Hook-Timeout beispielsweise 2.000 ms beträgt und eine HTTP_REQUEST-Funktion auf 2.000 ms festgelegt ist, kann es vorkommen, RequestTimeoutMilliseconds dass die Funktion vor Abschluss eines Timeouts abläuft, falls eine Verarbeitung vor oder nach dem HTTP-Aufruf erfolgt.

Die player_params Gesamtgröße beinhaltet die kombinierte Zeichenzahl aller Ausgabeschlüsselnamen und -werte. Beispiel: Beim Ausgeben player_params.deviceType = "mobile" und Zählen vondeviceType, mobileregion, und wird us-east-1 auf die Gesamtzahl von 1.000 Zeichen player_params.region = "us-east-1" angerechnet.

Grenzwerte für Ausdrücke

Limit Wert Durchgesetzt bei
CPU-Zeit pro Ausdruck 100 ms Laufzeit
Tiefe des Stapels 100 Laufzeit
Länge des Ausdrucks 1.000 Zeichen Verfassen

Wenn ein Ausdruck zur Laufzeit einen Grenzwert überschreitet, wird der Ausdruck MediaTailor gestoppt und der Fehler aufgezeichnet. Einzelheiten zu bestimmten Fehlertypen finden Sie unterProblembehandlung und Überwachung.

Grenzen der Funktionszusammensetzung

Limit Wert
Schritte pro sequentiellem Executor 1–10
Kinder pro gleichzeitigem Executor 1–10
Maximale Parallelität (gleichzeitiger Executor) 1—2
Standard-Timeout (gleichzeitiger Executor) 2.000 ms
Eindeutige Namespaces pro gleichzeitigem Executor Erforderlich (bei der Erstellung validiert)
Maximale Verschachtelungstiefe 2
Gesamtzahl der Funktionsausführungen pro Hook 20
Ausgabeeinträge pro Funktion 20
Zirkuläre Verweise Nicht zulässig

Diese Beschränkungen werden bei der Erstellung durchgesetzt.

Grenzwerte für HTTP-Anfragen

Limit Wert
Länge des URL-Ausdrucks 25.000 Zeichen
URL-Länge (nach der Auswertung) 2,048 Zeichen
Länge des Körperausdrucks 100 000 Zeichen
Körpergröße anfragen (nach Auswertung) 64 KB
Anzahl der Header 50
Länge des Header-Namens 256 Zeichen
Länge des Header-Werts 8.192 Zeichen
Anforderungstimeout 100—2.000 ms (vom Kunden konfigurierbar über) RequestTimeoutMilliseconds
Zulässige URL-Schemata https, http
Eingeschränkte Header Host, Transfer-Encoding, Content-Length, Connection

Beschränkungen der Ausdruckslänge und der Header werden bei der Erstellung durchgesetzt, wenn Sie die Funktion erstellen oder aktualisieren. Die berechneten URL- und Textgrößenbeschränkungen, das Anforderungs-Timeout und die eingeschränkten Header werden zur Laufzeit durchgesetzt, nachdem die Ausdrücke ausgewertet wurden. MediaTailor Ein URL-Ausdruck, der bei der Erstellung akzeptiert wird, kann zur Laufzeit immer noch das berechnete URL-Limit überschreiten. In diesem Fall wird die Anforderung nicht gesendet.

Wenn eine Funktion einen eingeschränkten Header festlegt, MediaTailor akzeptiert sie die Funktionskonfiguration zum Zeitpunkt der Erstellung, löscht den Header jedoch, wenn die HTTP-Anforderung während der Ausführung gesendet wird.

Grenzwerte für Antworten

Limit Wert
response.bodymaximale Größe 20.000 Zeichen
response.textmaximale Länge 20.000 Zeichen

Diese Grenzwerte werden zur Laufzeit durchgesetzt.

Grenzwerte für die Ausgabe

Limit Wert
Maximale Länge des Ausgabewerts (pro Schlüssel) 1.000 Zeichen

Diese Grenzwerte werden zur Laufzeit durchgesetzt.

Erlaubte JSONATA-Funktionen

Eine vollständige Liste der erlaubten Funktionen finden Sie unter. JSONataReferenz für Ausdrücke

Hilfe bei der Diagnose von Fehlern im Zusammenhang mit diesen Grenzwerten finden Sie unterProblembehandlung und Überwachung.