PTS压测的时候 设置的并发是1000并发数, 为什么会自动变成500 并发?

PTS压测的时候 设置的并发是1000并发数, 为什么会自动变成500 并发,然后再变成1000 并发啊?b7e8ec2119efb11ecf82821b14b4d0d0.png

展开
收起
真的很搞笑 2023-09-13 16:21:59 298 分享 版权
阿里云 AI 助理回答

在使用PTS(性能测试)进行压测时,您设置的并发数从1000自动变为500,然后再逐步增加到1000,这种现象可能与以下原因有关:


1. 流量模型配置的影响

根据知识库中的描述,PTS支持多种流量模型,包括手动调速均匀递增阶梯递增模式。如果您选择了均匀递增阶梯递增模式,系统会按照设定的规则逐步增加并发数,而不是直接以目标并发数开始压测。

  • 均匀递增模式:并发数会以每分钟相同数量的递增方式进行压测,对应的压力预估图是一条斜直线。
  • 阶梯递增模式:并发数会以阶梯形式逐步增加,最终达到目标并发数并保持一段时间。

因此,如果您的场景配置了递增模式,系统会先从较低的并发数(如500)开始,逐步增加到目标值(1000)。建议检查您的施压配置页面,确认是否选择了递增模式。


2. RPS限制导致并发调整

PTS在施压过程中会对RPS(每秒请求数)有一定的限制,尤其是在资源包计费版本中,不同并发数对应不同的RPS上限。如果服务端的响应时间(RT)较长,可能导致实际TPS(每秒事务数)无法达到预期值,从而影响并发数的增长。

公式为:

TPS = 并发数 / RT

如果服务端的RT较高,即使设置了较高的并发数,实际TPS也可能较低,导致系统动态调整并发数以匹配RPS限制。例如,当RT较高时,系统可能会先以较低的并发数(如500)运行,待服务端性能稳定后再逐步增加到目标值(1000)。


3. 施压机冷启动的影响

在压测刚开始时,可能会出现一个短暂的尖峰现象,这是由于施压机自身冷启动导致的。冷启动期间,系统可能暂时以较低的并发数运行,随后逐步增加到目标值。


4. 脚本改写对线程组的影响

如果您的压测脚本中包含多个线程组,PTS会在压测时对脚本进行改写,以确保并发数能够正确分配到各个线程组。例如,假设您配置了500并发,并且脚本中有两个普通线程组,系统会按照线程组的比例分配并发数。如果脚本改写逻辑未完全适配您的配置,可能导致并发数在初始阶段不一致。


解决方法

  1. 检查流量模型配置
    施压配置页面中确认是否选择了递增模式。如果希望直接以目标并发数(1000)进行压测,请选择手动调速模式

  2. 优化服务端性能
    如果服务端的RT较高,建议优化服务端性能,减少响应时间,从而提高TPS和并发能力。

  3. 扩展施压机资源
    如果施压机资源不足,可以通过IP扩展功能增加施压机数量,以支持更高的并发数和RPS。

  4. 验证脚本配置
    检查压测脚本中的线程组配置,确保线程组的线程数比例合理。如果有多个线程组,建议将线程数成比例配置,以避免并发分配不均的问题。


通过以上分析和调整,您可以更好地理解并发数变化的原因,并采取相应措施优化压测过程。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

云原生可观测基于Prometheus、Grafana 、OpenTelemetry 等核心产品, 形成指标、链路存储分析、异构数据源集成的数据层, 通过标准PromQL和SQL提供大盘展示、告警与探索能力。

还有其他疑问?
咨询AI助理