View a markdown version of this page

功能限制 - AWS Elemental MediaTailor

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

功能限制

本页列出了适用于函数的限制。这些限制在创作时(创建或更新函数时)和运行时(函数运行时)强制执行。

挂钩执行限制

钩子 限制
PRE_SESSION_INITIALIZATION 总超时时间 2,000 毫秒
PRE_SESSION_INITIALIZATION player_params大小 1000 个字符
PRE_ADS_REQUEST 总超时时间 2,000 毫秒

这些超时涵盖了整个挂接执行,包括所有函数步骤和 HTTP 调用。如果挂接超过其超时时间,则 MediaTailor 丢弃所有输出并继续操作,就好像没有附加任何函数一样。

单个函数的超时(RequestTimeoutMilliseconds例如 HTTP_REQUEST 函数)必须符合挂接的总超时时间。例如,如果挂接超时时间为 2,000 毫秒,并且 HTTP_REQUEST 函数设置RequestTimeoutMilliseconds为 2,000 毫秒,则如果在 HTTP 调用之前或之后发生任何处理,则该函数可能会在完成之前超时。

player_params总大小包括所有输出密钥名称和值的组合字符数。例如,输出player_params.deviceType = "mobile"并将、和player_params.region = "us-east-1"deviceTypemobileregion计 1,000 个字符。us-east-1

表达限制

限制 强制执行于
每个表达式的 CPU 时间 100 毫秒 运行时
堆栈深度 100 运行时
表达式长度 1000 个字符 编写

当表达式在运行时超过限制时,将 MediaTailor 停止该表达式并记录错误。有关特定错误类型的详细信息,请参阅故障排除和监控

函数组合限制

限制
每个顺序执行器的步骤数 1–10
每个并行执行者的子女数 1–10
最大并发度(并发执行器) 1—2
默认超时(并发执行器) 2,000 毫秒
每个并发执行器的唯一命名空间 必需(在创作时验证)
最大嵌套深度 2
每个挂接的函数执行总数 20
每个函数的输出条目 20
循环引用 不允许

这些限制是在创作时强制执行的。

HTTP 请求限制

限制
网址长度 2,048 个字符
请求身体尺寸 64 KB
标题数 50
标题名称长度 256 个字符
标题值长度 8,192 个字符
请求超时 100—2,000 毫秒(客户可配置通过)RequestTimeoutMilliseconds
允许的网址架构 https, http
受限标题 Host, Transfer-Encoding, Content-Length, Connection

URL 长度、正文大小、标头数量和标头大小限制在创作时强制执行。请求超时和受限标头在运行时强制执行。

如果函数设置了受限标头,则在创作时 MediaTailor 接受函数配置,但在执行期间发送 HTTP 请求时会删除该标头。

响应限制

限制
response.body最大尺寸 20,000 字符
response.text最大长度 20,000 字符

这些限制是在运行时强制执行的。

输出限制

限制
输出值最大长度(每键) 1000 个字符

这些限制是在运行时强制执行的。

允许的 JSonata 函数

有关允许的函数的完整列表,请参阅jsonata 表达式参考

有关诊断与这些限制相关的错误的帮助,请参阅故障排除和监控