全部产品
云市场

如何进行施压配置

更新时间:2019-07-17 14:58:06

每个 API 可以视为业务系统的一个节点,处理能力不同导致可承载的业务量也不一致。在施压配置中,您可以指定不同的压测模式、压测量级,并考虑压测数据是否允许重复等因素,对压测个性化设置,检验各业务节点的性能表现。

本文将介绍以下内容:

配置压测模式

配置量级及数据

配置过程中,您可以通过查看压力预估图,预判测试压力分布。压力预估图的解读,参见压力预估图

配置压测模式

压测模式配置区域如下图所示。

压测模式

是否智能压测

智能压测可提供指标预估能力,判定实际值是否属于预估正常范围,帮助定位性能异常拐点。如何使用智能压测请参见创建智能压测

压力来源

  • 国内公网(默认模式):发起压测的节点来自全国各地,根据压测的量级来分配对应的节点资源(IP)。

  • 阿里云内网:使用阿里云经典网络或阿里云 VPC 网络来进行压测。若需使用阿里云内网压测,请参见阿里云内网压测

    • 选择经典网络时,压力来源来自该地域的阿里云经典网络施压机。

    • 选择 VPC 网络时,您需要继续选择地域、VPC-ID、安全组、虚拟交换机等信息,压力来源来自您选择的阿里云 VPC 网络施压机。

    说明:

    • 阿里云内网压测对持有 278 元及以上可用资源包的用户开放。

    • 阿里云内网压测发起节点支持的地域以界面为准。如有其他地域的支持需求,您可以提交工单

压测模式

压测模式有两种:并发模式(虚拟用户模式)、RPS 模式(Requests Per Second,每秒请求数,吞吐量模式)。

  • 并发模式

    “并发”是指虚拟并发用户数,从业务角度,也可以理解为同时在线的用户数。

    适用场景:如果需要从客户端的角度出发,摸底业务系统各节点能同时承载的在线用户数,可以使用该模式设置目标并发。

    • 并发模式下,需要指定全场景的最大并发数,再设置各串联链路的并发权重。

    • 串联链路内各 API 的响应速度不同(表现为响应时间不同),所以单位时间内 API 的并发数也会不同。API 响应速度越快,单位时间内累积在 API 上的并发用户数越少。

      例如,共 100 个虚拟用户需要操作某个事务(即串联链路)。假设,该串联链路中共有 2 个 API,API 1 响应速度快而 API 2 响应速度慢。则更多的虚拟用户将等待在 API 2 上,API 2 需要更多的线程资源来处理更多的虚拟用户请求。

  • RPS 模式

    RPS(Requests Per Second)是指每秒请求数。

    适用场景:RPS 模式即“吞吐量模式”,通过设置每秒发出的请求数,从服务端的角度出发,直接衡量系统的吞吐能力,免去并发到 RPS 的繁琐转化,一步到位。

    • API 接口(如电商加购物车、下单等)主要用 TPS(Transaction Per Second, 每秒事务数)来衡量系统的吞吐能力,选择该模式可以直接按照预期的 TPS 设置 RPS。如果希望检验“下单”接口是否能达到 500 TPS 的预期,那么设置 RPS 为 500,每秒发送 500 个请求,可检验系统的吞吐能力。

    • 该模式下,请求无法及时响应时可能会导致较高的并发,异常情况请及时停止。

    • 该模式仅支持非自动递增进行压测(即需在压测过程中手工调速)。

是否自动递增

  • 自动递增(仅适用于并发模式)

    按照固定比例进行压测量级的递增,并在每个量级维持固定压测时长,以便观察业务系统运行情况。

    开启是否自动递增开关,并设置最大并发递增量级(如 10%)和单量级持续时长(如 1分钟)。

    说明:进行压测时,您可以随时对场景或串联链路进行手动调速,自动递增模式自动失效。

  • 非自动递增

    非自动递增即手动调速模式。不开启是否自动递增开关,设置压测总时长及并发模式下的最大并发

配置量级及数据

设置好压测模式后,需要设置压测起始量级与最大量级,并支持使用来源 IP 扩展。

量级及数据配置

压测数值

每个 API 可以视为业务系统的一个节点,处理能力不同导致可承载的业务量也不一致。并发模式与 RPS 模式施压的方式不同,故压测数值上的设置也会不同。

说明:无论选取何种压测模式,各场景最大值的总和不可超过该账户下对应资源包的最大 VU/RPS。

  • 并发模式

    在并发模式下,设置串联链路级别的最大并发权重起始百分比

    • 最大并发权重:该串联链路占全场景的权重。如串联链路 1 置为 1,串联链路 2 置为 3,则表示各自在场景最大并发总占 25% 和 75%。

    • 起始百分比:该串联链路自身的起始比例,默认 10%。

    并发模式摸底的是系统承载并发用户数(从客户端业务考虑),而场景中的多个串联链路(事务)之间一般有一定的业务比例和实际吞吐关系(如下单和加购按照业务评估是1:0.8),故只需在串联链路(事务)维度,依据比例关系,设置最大并发和起始并发。

  • RPS 模式

    在 RPS 模式下,摸底的是单API(接口)的服务端吞吐能力,故需要给每个 API 设置最大 RPS起始 RPS

批量设置

并发模式和 RPS 模式均可以使用批量设置。

  1. 勾选需要设置的所有串联链路或 API。

  2. 单击左下角批量设置,在弹框中输入数值。

  3. 单击确认,完成设置。

来源 IP 扩展

仅在国内公网压测模式下使用有效。

来源 IP 是指发起压测流量的 IP 地址。来源 IP 扩展功能允许您根据并发量或 RPS,在一定范围内(该范围以控制台页面为准)增加施压 IP 地址数,减少因以下原因引起的压测异常。

说明:在以下情况,请优先按照建议处理方案执行;来源 IP 扩展只能帮助您减少问题发生的概率。

  • SLB 限制问题:首先请结合购买的 SLB 产品计费类型,关注规格限制和带宽限制,是否已经到达上限。另外,当 SLB 是服务最外层,且接口是 HTTPS 或者开启了 7 层会话保持功能,压测出现一些 503 而且后端并没有相关流量和日志,可能出现了 SLB 单 IP 地址限流问题

  • 高防/WAF 的问题:未关闭高防/WAF 可能触发流量拦截。建议您基于业务评估,压测时临时关闭高防/WAF。如果不想关闭,可以考虑增加PTS的UA放行规则来避免压测流量被拦截的情况。

  • 使用 CDN 或全站加速:建议您接近或者超出已有业务峰值时,提前提交工单报备给这两个产品。

指定压力来源

在压力来源是公网的情况下,PTS 性能测试的压测流量是分布式的,从全国大小城市和运营商随机调度。通过流量定制功能,您可以指定压测流量发起的地域或运营商,并配置其占比。

说明:若您在压测时需要在一段时间内独占压测机器,可以使用独立资源池功能。详情请参见独立资源池

具体操作步骤如下:

  1. 勾选流量定制

  2. 单击详细配置

  3. 地域定制对话框中,配置以下项:

    • 维度选择:目前支持根据地区或运营商指定压力来源。其他功能将陆续开放。
    • IP数分配:可添加多条分配规则,指定具体的地域或运营商及其 IP 数占比。操作步骤如下:

      1. 单击+新地域/运营商分配
      2. 选择地域或运营商,并输入其 IP 数占比。
    • 启动策略

      • 优先匹配资源:只有匹配到指定资源时,才会启动压测。
      • 优先启动压测:立即启动调度资源,指定资源不足时会随机分配资源,满足压测需求。