Amazon SWF 配额 - Amazon Simple Workflow Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

Amazon SWF 配额

Amazon SWF 对某些工作流程参数的大小设置了配额,例如每个账户的域名数量和工作流程执行历史的大小。这些配额旨在防止错误的工作流程消耗系统的所有资源,但不是硬性限制。如果您发现您的应用程序经常超过这些配额,您可以请求增加服务限额.

Amazon SWF 的通用账户配额

  • 最大注册域数— 100

    此配额包括已注册的域名和已弃用的域名。

  • 最大工作流和活动类型数— 每个域每个 10000 个

    此配额包括已注册和已弃用的类型。

  • API 调用限额— 除了不常见的峰值之外,如果应用程序在很短的时间内进行大量 API 调用,则可能会受到限制。

  • 最大请求大小— 每个请求 1 MB

    这是每个 Amazon SWF API 请求的数据大小,包括请求标头以及所有其他关联的请求数据。

  • 对的响应被截断计数API— 表示已达到内部配额,但响应数不是全部计数。

    在返回完整响应之前,有些查询将在内部达到上述 1 MB 的配额。以下 API 可以返回截断的响应,而不是完整的计数。

    对于上述每一个 API,如果 truncated 响应设置为 true,计数将小于完整数量。此内部配额无法增加。

  • 最大标签数— 每个资源 50 个标签。

    尝试添加超过 50 个标签会引发 400 错误 TooManyTagsFault

工作流程执行配额

  • 最大已开启工作流执行数— 每个域 100000 个

    此计数包括子工作流执行。

  • 工作流程执行时间最多— 1 年

  • 工作流程执行历史记录的最大大小— 25,000 场活动

    最佳实践是使构造的每个工作流的历史记录不会增长到超过 10000 个事件。因为决策程序必须获取工作流历史记录,所以,历史记录较小时,决策程序能够更快地完成决策。如果使用流程框架,你可以使用 ContinueAsNew 以全新的历史继续工作流程。

  • 最大已开启子工作流执行数— 每个工作流执行数 1000 个

  • 工作流执行空闲时间限额— 1 年(受工作流程最大执行时间限制)

    您可以配置工作流程超时,以便在工作流程特定阶段耗时太长时引发超时事件。

  • 工作流保留时间限额— 90 天

    此时间过后,无法再检索或查看工作流程历史。对 Amazon SWF 保留的已关闭工作流程执行数没有进一步的限制。

如果您的用例要求您超出这些配额,则可以使用 Amazon SWF 提供的功能继续执行并使用以下方式构建应用程序子工作流程执行数。如果您发现仍需要增加配额,请参阅请求增加配额.

任务执行配额

  • 每个任务列表的最大轮询器数— 每个任务列表有 1000 个

    同时最多可有 1000 个轮询程序对一个特定任务列表进行轮询。如果超过 1000,会引发 LimitExceededException

    注意

    虽然最大值为 1,000,但你可能会遇到LimitExceededException错误早于这个配额。为减少这些错误,请使用多个任务列表分发轮询。

  • 每秒计划的最大任务数— 每个任务列表有 2,000 个

    在特定任务列表上,您每秒最多可以安排 2,000 个任务。如果你超过 2,000,你的ScheduleActivityTask决策将失败ACTIVITY_CREATION_RATE_EXCEEDED错误消息。

    注意

    虽然最大值为 2,000,但你可能会遇到ACTIVITY_CREATION_RATE_EXCEEDED错误早于这个配额。要减少这些错误,请使用多个任务列表来分配负载。

  • 最大任务执行时间— 1 年(受工作流程最大执行时间限制)

    可以配置活动超时,以便在活动任务执行的特定阶段耗时太长时引发超时事件。

  • SWF 将任务保留在队列中的最大时间— 1 年(受工作流程执行时间配额的限制)

    可以配置活动注册过程中的默认活动超时,以便在活动任务执行的特定阶段耗时太长时引发超时事件。还可以在决策程序代码中排定活动任务时,覆盖默认活动超时。

  • 最大未完成活动任务数— 每个工作流执行数 1000 个。

    此配额既包括已安排的活动任务,也包括工作人员正在处理的活动任务。

  • 最大打开计时器— 每个工作流执行数 1000 个

  • 最大输入/结果数据大小— 32768B

    此配额会影响活动或工作流程执行结果数据、计划活动任务或工作流程执行时的输入数据,以及通过工作流程执行信号.

  • 决策任务响应中的最大决策量— 变化

    由于上面有 1 MB 的配额API 请求大小的最大值,在单次调用中返回的决策数量RespondDecisionTaskCompleted将根据每个决策使用的数据大小进行限制,包括提供给预定活动任务或工作流程执行的任何输入数据的大小。

Amazon SWF 限制配额

除了前面描述的服务配额外,还限制了某些 Amazon SWF API 调用和决策事件,以维持服务带宽,使用令牌桶方案。如果您的请求率持续超过此处列出的费率,您可以申请增加限额配额.

所有地区的限制和决策配额都相同。

所有区域的限制配额

API 名称 存储桶大小 每秒充值率
CountClosedWorkflowExecutions 2000 6
CountOpenWorkflowExecutions 2000 6
CountPendingActivityTasks 200 6
CountPendingDecisionTasks 200 6
DeprecateActivityType 200 6
DeprecateDomain 100 6
UndeprecateDomain 100 6
DeprecateWorkflowType 200 6
UndeprecateWorkflowType 200 6
DescribeActivityType 2000 6
DescribeDomain 200 6
DescribeWorkflowExecution 2000 6
DescribeWorkflowType 2000 6
GetWorkflowExecutionHistory 2000 60
ListActivityTypes 200 6
ListDomains 100 6
ListClosedWorkflowExecutions 200 6
ListOpenWorkflowExecutions 200 48
ListWorkflowTypes 200 6
PollForActivityTask 2000 200
PollForDecisionTask 2000 200
RecordActivityTaskHeartbeat 2000 160
RegisterActivityType 200 60
RegisterDomain 100 6
RegisterWorkflowType 200 60
RequestCancelWorkflowExecution 2000 30
RespondActivityTaskCompleted 2000 200
RespondActivityTaskCanceled 2000 200
RespondActivityTaskFailed 2000 200
RespondDecisionTaskCompleted 2000 200
SignalWorkflowExecution 2000 30
StartWorkflowExecution 2000 200
TerminateWorkflowExecution 2000 60
UndeprecateActivityType 200 6
TagResource 50 30
UntagResource 50 30
ListTagsForResource 50 30

所有区域的决策配额

API 名称 存储桶大小 每秒充值率
RequestCancelExternalWorkflowExecution 1200 120
ScheduleActivityTask 500 200
SignalExternalWorkflowExecution 1200 120
StartChildWorkflowExecution 500 12
StartTimer 2000 200

请求增加配额

使用支持中心页面中的页面Amazon Web Services Management Console请求增加亚马逊简单工作流程服务提供的资源的配额。有关更多信息,请参阅 。申请增加配额在里面Amazon一般参考.