Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
压力测试计划-JMeter_Jmeter - Fatal编程技术网

压力测试计划-JMeter

压力测试计划-JMeter,jmeter,Jmeter,我是压力测试新手,希望确保我以正确的方式进行压力测试 Out团队的目标是确定我们的应用程序当前的后端基础设施(AWS API网关、AWS Lambda和AWS MySQL RDS)是否能够支持100000个日常用户。我对这些问题的思考方式如下: 输入: 10万用户/天 16个工作小时/天-因为我们拥有全球用户群 用户使用该应用程序的平均时间为30分钟 规划: 最有可能的用户在16小时内不会均匀分布,因此让我们使用3倍的平均值,即(10万用户/16小时)*3=18750用户/h 虽然我们预计用

我是压力测试新手,希望确保我以正确的方式进行压力测试

Out团队的目标是确定我们的应用程序当前的后端基础设施(AWS API网关、AWS Lambda和AWS MySQL RDS)是否能够支持100000个日常用户。我对这些问题的思考方式如下:

输入:

  • 10万用户/天
  • 16个工作小时/天-因为我们拥有全球用户群
  • 用户使用该应用程序的平均时间为30分钟
规划:

  • 最有可能的用户在16小时内不会均匀分布,因此让我们使用3倍的平均值,即(10万用户/16小时)*3=18750用户/h
  • 虽然我们预计用户在我们的应用程序上会花费30分钟,但我们假设只有10分钟的时间会到达峰值区。因此,我们需要模拟3125个并发用户(18750个用户/小时*10min/60min)
  • 问题:

  • 上述逻辑正确吗
  • 在JMeter中模拟这种负载的正确方法是什么
  • 我们应该检查线程的数量(如果是,有多少个)
  • 我们是否应该研究吞吐量(如果是,我们应该寻找什么值)
  • 还有别的吗
  • 如有任何建议,将不胜感激

    谢谢,,
    gen

    您的逻辑很好,只是您似乎将Vuser与x小时访问(或目标吞吐量即容量相混淆)。以下内容验证了您的计算


    在IMO中,由于您知道目标TP(SLA),实现工作负载的一种简单方法是使用。此TG将实例化维持目标TP所需的线程数。

    您的逻辑很好,只是您似乎将Vuser与x小时访问(或目标吞吐量也称容量)混淆了。以下内容验证了您的计算


    在IMO中,由于您知道目标TP(SLA),实现工作负载的一种简单方法是使用。此TG将实例化维持目标TP所需的线程数。

    您所描述的看起来像是一个,但有点不同,它不是检查应用程序是否可以支持100k用户,而是查找第一个用户

    通常情况下,该过程如下所示:

  • 从1个线程(虚拟用户)开始

  • 逐渐增加负载,直到:

    • 您已达到应用程序应支持的最大用户数
    • 您可以检测到性能下降(增加响应时间、降低吞吐量、开始发生错误,无论先发生什么)
  • 在理想系统中,当您将负载增加给定的系数时,吞吐量(每秒请求数)应增加相同的系数,响应时间应保持不变(或下降)

    如果响应时间增加,则意味着系统无法处理负载,您需要确定原因(最慢的组件),并检查是否可以以某种方式对其进行优化

    对于“负载测试”,您的假设看起来是有效的


    更多信息:

    您描述的是一个不同的应用程序,它不是关于检查应用程序是否支持10万用户,而是关于查找第一个用户

    通常情况下,该过程如下所示:

  • 从1个线程(虚拟用户)开始

  • 逐渐增加负载,直到:

    • 您已达到应用程序应支持的最大用户数
    • 您可以检测到性能下降(增加响应时间、降低吞吐量、开始发生错误,无论先发生什么)
  • 在理想系统中,当您将负载增加给定的系数时,吞吐量(每秒请求数)应增加相同的系数,响应时间应保持不变(或下降)

    如果响应时间增加,则意味着系统无法处理负载,您需要确定原因(最慢的组件),并检查是否可以以某种方式对其进行优化

    对于“负载测试”,您的假设看起来是有效的


    更多信息:

    谢谢CarlosG。这是否意味着我不应该考虑并发Vuser,而应该专注于使用您建议的插件模拟每分钟所需的请求?正确。您的目标应该是确定特定负载水平(Vuser)下应用程序环境的“容量”(吞吐量)(以及相应的“响应时间”(也称“速度”))是多少。请记住,这是一种“非线性”关系。在页面的中间,你会发现一个图表显示了这种关系。谢谢CarlosG。这篇文章内容丰富,谢谢CarlosG。这是否意味着我不应该考虑并发Vuser,而应该专注于使用您建议的插件模拟每分钟所需的请求?正确。您的目标应该是确定特定负载水平(Vuser)下应用程序环境的“容量”(吞吐量)(以及相应的“响应时间”(也称“速度”))是多少。请记住,这是一种“非线性”关系。在页面的中间,你会发现一个图表显示了这种关系。谢谢CarlosG。这篇文章内容丰富,谢谢你。您将使用什么标准来定义“您达到应用程序应支持的最大用户数”。是每分钟请求数还是并发线程数?这取决于您的应用程序NFR/SLA谢谢。因此,在我的示例中,我需要在10分钟内模拟3125 CC Vuser。由于我们没有资源来创建3125个并行线程,我们将不得不使用15625个请求/分钟(3125个用户*50个请求/峰值时间)