并发超限
并发超限(ResourceLimitReached)指云函数 SCF 在同一时刻执行的并发数超过 配额限制 导致的函数报错。并发超限分为同步调用、异步调用两种情况。 异步调用
同步调用
解决并发超限相关指引
查看并发超限监控
您可通过云函数控制台查看相关函数的函数受限次数和具体受限日志。
查看函数受限次数
2. 在“函数服务”页中,选择需要查看的函数名,进入该函数的详情页面。
3. 在“函数管理”中,选择监控信息 > 受限次数,查看相关函数的受限次数情况。如下图所示: 查看函数受限日志
2. 在“函数服务”页中,选择需要查看的函数名,进入该函数的详情页面。
3. 在“日志查询”中,选择调用日志 > 调用超限,查看相关函数的具体受限日志。如下图所示:
并发超限处理
异步调用对并发超限场景有平台重试策略帮助用户自动对并发超限进行处理并重试,通常情况下异步调用的并发超限用户无需进行任何操作,在设定的最长等待时间内,函数平台会自动对并发超限错误进行重试。
同步调用发生错误时,错误信息会直接返回给用户,请求不会进行重试。
注意:
异步调用中,如对时效性比较敏感可以通过配置最大独占配额来减少或降低超限对业务系统的影响。例如需要重要消息超过设置的最长保留时间后不会丢失则应设置死信队列兜底。
配置死信队列
死信队列 DLQ 是一个用户账号下的 CMQ 队列,可用于收集错误事件信息、分析失败原因。如果您为函数配置了死信队列,由于超限导致的重试失败的消息都将发送到死信队列。详情可参见 死信队列创建。 配置最大独占配额
最大独占配额额度是用于保障函数可用并发的最大额度,通过配置最大独占配额额度,函数可以在额度内启动足够并发数量,并发最大可以达到配置额度。通过设置最大独占配额额度,函数不再与其他函数共享账号并发额度,可以降低出现并发超限的可能,获得更有保障的运行。详情可参见 设置最大独占配额。
本页内容是否解决了您的问题?