设置函数配额

为了防止函数被过度调用导致费用失控,每个账户在当前地域中最多可以同时运行100个实例。同时,函数计算还提供函数级别的实例数限制,防止单个函数过度调用导致实例占用,从而保护后端资源,避免预期外的费用开销。

应用场景

  • 保护函数的正常并发度。

    例如,有function-a、function-b两个函数共享账号级别的实例限制数,其中function-a是需要保护的重点业务函数,而function-b有可能被过度调用而影响function-a的正常请求。此时,可以单独为function-b设置实例限制,防止function-b抢占大量的实例数,使function-a分配不到足够的实例。也可以单独为function-a设置并发数,保证该函数一定能分配到指定数量的实例。

  • 保护下游服务。

    例如,在函数计算中需要大量访问RDS数据库,由于数据库处理能力有限,您需要保护RDS不被打垮,您可以为访问RDS的函数设置实例限制。

  • 禁止异常函数调用。

    例如,如果发现某个函数调用异常,可以设置最大函数实例数为0,禁止其调用。

  • 防止过度调用函数。

    例如,浏览器端或客户端用户的操作行为不受控制,设置函数级实例数限制可以防止调用失控而产生意外费用。

使用限制

  • 单个阿里云账号(主账号)在单个地域内总实例数默认限制为100,实际数值以配额中心为准,如果您需要提高该限制,请前往配额中心申请。

  • 函数级别可设置的实例数上限是地域级别限制的90%,并且该地域所有函数可设置的实例总数也是该地域级别限制的90%。

    例如,地域级别可设置的实例数上限为300个,那么函数级别可设置的实例数上限为270个。当一个函数已设置实例数上限为100个,其他函数能够设置的实例数上限总和不能超过170个。

设置函数弹性实例数上限

管理单个函数

  1. 登录函数计算控制台,在左侧导航栏,选择函数管理 > 函数列表

  2. 在顶部菜单栏,选择地域,然后在函数列表页面,单击目标函数。

  3. 选择弹性配置页签,然后单击函数配额区域的编辑

  4. 编辑配额面板中,填写弹性实例配额,然后单击确定

管理多个函数

  1. 登录函数计算控制台,在左侧导航栏,选择弹性管理 > 函数配额

  2. 函数配额页面,单击创建配额,在创建配额面板,选择目标函数,填写弹性实例配额,然后单击确定

GPU函数资源配额锁定

设置函数弹性实例数上限后,账号会从总的资源配额中为该函数锁定资源配额,被锁定的资源只能被当前函数使用。以GPU函数的GPU卡资源为例,假设您为函数设置的弹性实例数上限即弹性实例配额2,不同场景下,为函数锁定的GPU卡资源配额如下表所示:

说明

不同系列GPU卡的总配额,请参见配额与使用限制

场景示例

配额锁定逻辑

实际设置

函数配额锁定

单版本单卡型

弹性实例配额 × 单实例卡数

Tesla系列单卡

锁定2Tesla

多版本同卡型

每个版本按弹性实例配额 × 该版本卡数计算,最终取最大值

版本1:Tesla系列单卡

版本2:Tesla系列8

锁定16Tesla

多版本跨卡型

每种卡型按弹性实例配额 × 该卡型所有版本中的最大卡数独立计算,分别锁定不同卡型配额

版本1:Tesla单卡

版本2:Ada.1系列单卡

版本3:Ada.1系列8

锁定2Tesla卡+16Ada.1