View a markdown version of this page

功能限制 - AWS Elemental MediaTailor

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

功能限制

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

挂钩执行限制

Hook 限制
PRE_SESSION_INITIALIZATION 总超时时间 2000 毫秒
PRE_SESSION_INITIALIZATION player_params大小 1000 个字符
PRE_ADS_REQUEST 总超时时间 2000 毫秒

这些超时涵盖了整个挂钩执行,包括所有函数步骤和 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、和,总长us-east-1度为 1,000 个字符。

表达式限制

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

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

函数组合限制

限制
每个连续执行者的步数 1–10
最大嵌套深度 2
每个挂钩的函数执行总数 20
每个函数的输出条目 20
循环引用 不允许

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

HTTP 请求限制

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

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

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

响应限制

限制
response.body最大尺寸 2 万个字符
response.text最大长度 2 万个字符

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

输出限制

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

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

允许使用的 jsonata 函数

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

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