【问题标题】:In Jmeter, how do you test the maximum bytes over time that a website can handle?在 Jmeter 中,如何测试网站可以处理的最大字节数?
【发布时间】:2017-08-14 07:29:57
【问题描述】:

在 Jmeter 中,我使用“Bytes Throughput Over Time”来检查我的网站可以处理的最大 bps。 (准确的说是查看我的网站经过我的反向代理系统后可以处理的最大bps)

如果我只是简单地运行一个用户,它似乎无法测试最大 bps。这是一张使用 5 个线程、0.5 秒加速和 100 个循环的图表示例照片。

bps graph

Test properties

但是,当我将其设为 100 个线程时,bps 会大幅增加。我怀疑这是因为请求需要时间来发送,所以在发送新请求之前等待每个请求完成是无法获得最大值的。

那么,获取最大 bps 的正确方法是什么?是通过逐渐增加线程数直到出现错误响应吗?是通过使用“使用多部分/表单数据进行 POST”并下载文件而不是执行标准 GET 请求吗?

任何帮助将不胜感激。

【问题讨论】:

  • 您好,感谢您的评论,但您能解释一下这与我的问题有什么关系吗?
  • 尝试将斜率与线程匹配,如 100
  • 我照你说的做了。 10 个 10 秒的线程以大约 100,000 字节/秒的速度上升。 100 个线程以 100 秒的速度上升大约 350,000 字节/秒。正如我所提到的,当线程增加时,bps 也会增加。因此,如何测试最大 bps 的问题仍然存在。

标签: http jmeter performance-testing load-testing jmeter-plugins


【解决方案1】:

当您增加线程数量时,JMeter 将生成更多新线程,并且它们都会并行执行您在测试中的请求,因此更多线程 -> 在您的网站上同时发送更多请求 -> 每秒接收的总字节数增加.

您想通过找到这个最大 bps 值来达到什么目的?因为可能没有一种正确的方法可以做到这一点。
如果您只想找到 bps 不再增加的点,您可以添加更多线程,直到 bps 保持不变并且不再增加,但您可能无法为此生成和运行足够的线程单机。如果您尝试下载文件或类似您建议的内容,则可以使用更少的线程达到最大限制。

【讨论】:

  • 这就是我的想法,但我不确定在增加线程或下载文件等操作时是否需要考虑一些开销
  • 线程数在达到最大 bps 之前会成为瓶颈吗?因为在某个点之后,我开始收到一些请求的超时错误,但是随着线程的增加,我仍然会得到更多的 bps。我真的不认为当我遇到超时错误时增加线程是有用的。
  • 网站很可能无法响应向其发送请求的某些线程,这意味着您的服务无法同时正确地为那么多用户提供服务。我想说的是,在您的情况下,“最大”bps 是您拥有最多线程的点,而仍然没有错误。
猜你喜欢
  • 2019-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-18
  • 2017-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多