函数性能探测

性能探测可以得到单个实例的性能上限(即最大能承受的QPS),并给出满足端到端延迟限制的最佳并发度值,帮助您解决配置并发度的难题。另外,使用推荐的实例规格,能够降低使用成本。本文介绍如何创建函数压测任务和查看压测结果详情。

使用限制

  • 仅支持对HTTP函数进行压测,不支持对事件函数进行压测。

  • 仅支持单实例压测,不支持多实例压测。

  • Python 2.7和PHP 7.2版本的运行时不支持单实例多并发功能,因此,不支持其使用性能探测功能探测最佳实例并发度。更多信息,请参见单实例多并发使用限制

  • 不支持对GPU函数进行压测。

计费说明

压测功能本身不计费,但是压测产生的函数调用请求同正常请求进行计费。每次新建压测任务时,界面会显示本次压测预估的费用。关于请求的计费详情,请参见计费概述

前提条件

已创建服务和函数。具体操作,请分别参见创建服务创建函数

操作步骤

  1. 登录函数计算控制台,在左侧导航栏,单击服务及函数
  2. 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
  3. 函数管理页面,单击目标函数名称,然后单击性能探测页签。

  4. 在函数详情页面的性能探测页签,单击新建压测任务

    1. 单实例性能压测评估页签,输入必要的压测API信息,然后单击执行压测

      说明

      单击执行压测开始压测前,请先单击测试 API测试函数是否能成功执行。如果函数测试失败,函数压测将会失败。因此,请确保函数代码正确以及压测API的HTTP请求参数都配置正确,测试成功后再执行压测。

      配置项说明如下。

      配置项

      说明

      压测函数

      要执行压测任务的函数。默认选择当前函数,且不支持修改。

      函数规格

      函数规格方案。选择的规格越多,压测时间越长。支持自定义vCPU和内存的组合规格。

      预估费用

      压测产生的函数调用请求费用,自动计算。

      压测方法

      HTTP函数触发方式。目前支持GET、POST、PUT、DELETE方式。

      压测路径

      HTTP请求的路径。

      最大能够容忍的端到端延迟

      函数的端到端延迟指标值。函数计算根据此指标值,推荐实例最佳规格和并发度。端到端延迟与最佳规格和最佳并发度的关系如下所示。

      • 最佳规格:满足性能要求的前提下,最低成本的规格。

      • 最佳并发度:满足设置的最大延时限制的前提下,单实例最大QPS点对应的并发请求数。

    2. 单实例压测结果分析页签,查看压测结果。

      压测过程中,界面会提示压测预估时间。压测的规格越多,压测时间越长,压测费用也越高。

      压测结果中包含推荐的实例规格和最佳并发请求数。您还可以从压测结果下方的两张分析图中,查看分析过程。attribute-test-result

      说明

      函数计算的压测功能仅支持单实例压测。如您需要配置多实例压测,请单击单实例压测结果分析页签右侧的多实例弹性能力压测,跳转至PTS控制台配置。

    3. 单击查看单实例压测详情,跳转至单实例压测数据详情页签,查看每个规格的压测详情。每个规格的压测详情中,您可以看到随着并发度增加,延迟和最大QPS的变化情况。

      Specifications-test-result

常见问题

压测结果中推荐的最佳规格与最佳并发度是否完全准确?

每次推荐的并发度和规格值可以作为对函数不同规格性能评估的范围参考,但不能保证完全准确。您可以根据自己业务具体情况评估选择。

如果您想要获得更准确的值,可以多次提交压测任务,然后取多次压测结果中推荐值的平均值。

压测失败或请求错误率过高如何解决?

如果界面显示压测失败,请先根据错误原因排查压测API的配置。如果确认API配置没有问题,请联系我们获取技术支持。