View a markdown version of this page

関数の制限 - AWS Elemental MediaTailor

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

関数の制限

このページには、 関数に適用される制限が一覧表示されます。これらの制限は、作成時 (関数を作成または更新するとき) と実行時 (関数の実行時) に適用されます。

フック実行制限

フック 制限 値
PRE_SESSION_INITIALIZATION 合計タイムアウト 2,000 ミリ秒
PRE_SESSION_INITIALIZATION 合計player_paramsサイズ 1,000 文字
PRE_ADS_REQUEST 合計タイムアウト 2,000 ミリ秒
POST_ADS_RESPONSE 合計タイムアウト 2,000 ミリ秒
POST_ADS_RESPONSE 入力ペイロードのサイズ 128 KB
POST_ADS_RESPONSE 出力サイズ 256 KB
PRE_MANIFEST_INSERTION 合計タイムアウト 2,000 ミリ秒
PRE_MANIFEST_INSERTION 入力ペイロードのサイズ 128 KB
PRE_MANIFEST_INSERTION 出力サイズ 256 KB
PRE_MANIFEST_INSERTION 呼び出しあたりの挿入広告 10
リクエストパスフックの組み合わせ (リクエストごと) 共有実行予算 2,000 ミリ秒

これらのタイムアウトは、すべての関数ステップや HTTP 呼び出しを含むフック実行全体を対象としています。フックがタイムアウトを超えると、MediaTailor はすべての出力を破棄し、関数がアタッチされていないかのように続行します。

各フックの独自のタイムアウトに加えて、1 つのリクエスト内で実行される POST_ADS_RESPONSE、、および PRE_ADS_REQUESTPRE_MANIFEST_INSERTIONフックは、合計 2,000 ミリ秒の実行予算を共有します。以前のフックで費やされる時間は、同じリクエスト内の後のフックで使用できる予算を減らし、フックの有効なタイムアウトは、独自のタイムアウトと残りの予算のうち小さい方です。フックが起動する前に予算を使い果たすと、MediaTailor はそのフックを完全にスキップし、リクエストの処理を続行します。 はセッションの初期化中にPRE_SESSION_INITIALIZATION実行され、結合された予算の一部ではありません。

入力ペイロードサイズ制限は、MediaTailor が POST_ADS_RESPONSEおよび PRE_MANIFEST_INSERTIONフック用に構築するシリアル化された JSON 入力に適用されます。入力が 128 KB を超える場合、MediaTailor はそのリクエストのフック呼び出しをスキップします。出力サイズ制限は、関数がフックの書き込み可能な名前空間に書き込むことができるシリアル化された合計サイズを上限とし、256 KB を超える出力は破棄されます。

個々の関数タイムアウト (HTTP_REQUEST RequestTimeoutMilliseconds 関数の場合など) は、フックの合計タイムアウト内に収まる必要があります。たとえば、フックタイムアウトが 2,000 ミリ秒で、HTTP_REQUEST 関数が 2,000 ミリ秒RequestTimeoutMillisecondsに設定されている場合、HTTP 呼び出しの前後に処理が発生した場合、関数は完了する前にタイムアウトすることがあります。

player_params 合計サイズには、すべての出力キーの名前と値の合計文字数が含まれます。たとえば、 player_params.deviceType = "mobile"と mobileを出力するとdeviceType、1,000 文字の合計us-east-1に対して region、、、 がplayer_params.region = "us-east-1"カウントされます。

式の制限

制限 値 で強制
式あたりの CPU 時間 100 ミリ秒 実行時間
スタックの深さ 100 実行時間
式の長さ 1,000 文字 オーサリング

実行時に式が制限を超えると、MediaTailor は式を停止し、エラーを記録します。特定のエラータイプの詳細については、「」を参照してくださいトラブルシューティングとモニタリング。

関数構成の制限

制限 値
シーケンシャルエグゼキュターあたりのステップ 1~10
同時エグゼキュターあたりの子 1~10
最大同時実行数 (同時実行) 1~2
デフォルトのタイムアウト (同時実行) 2,000 ミリ秒
同時実行あたりの一意の名前空間 必須 (作成時に検証)
最大ネスト深度 2
フックあたりの関数実行の合計数 20
関数あたりの出力エントリ 20
円形参照 許可されていません

これらの制限は、オーサリング時に適用されます。

HTTP リクエストの制限

制限 値
URL 式の長さ 25,000 文字
URL の長さ (評価後) 2,048 文字
ボディ式の長さ 100,000 文字
リクエスト本文のサイズ (評価後) 64 KB
ヘッダー数 50
ヘッダー名の長さ 256 文字
ヘッダー値の長さ 8,192 文字
リクエストタイムアウト 100~2,000 ミリ秒 ( を介してお客様が設定可能RequestTimeoutMilliseconds)
許可された URL スキーム https, http
制限付きヘッダー Host, Transfer-Encoding, Content-Length, Connection

式の長さ制限とヘッダー制限は、関数を作成または更新するときに、作成時に適用されます。評価された URL と本文のサイズ制限、リクエストタイムアウト、および制限されたヘッダーは、MediaTailor が式を評価した後、実行時に適用されます。作成時に受け入れられた URL 式は、実行時に評価された URL 制限を超える可能性があります。その場合、リクエストは送信されません。

関数が制限付きヘッダーを設定すると、MediaTailor は作成時に関数設定を受け入れますが、実行中に HTTP リクエストが送信されるとヘッダーを削除します。

レスポンスの制限

制限 値
response.body 最大サイズ 20,000 文字
response.text 最大長 20,000 文字

これらの制限は実行時に適用されます。

出力制限

制限 値
出力値の最大長 (キーごと) 1,000 文字

これらの制限は実行時に適用されます。

許可された JSONata 関数

許可される関数の完全なリストについては、「」を参照してくださいJSONata 式リファレンス。

これらの制限に関連するエラーの診断については、「」を参照してくださいトラブルシューティングとモニタリング。