gpt4 book ai didi

java - jmeter headless 创建大量 Activity 线程,如可视虚拟机中所示。内存不足错误

转载 作者:行者123 更新时间:2023-12-02 05:07:49 25 4
gpt4 key购买 nike

我已经使用 jmeter 一段时间了,但这是我第一次尝试使用 headless 实例。

我创建了一个包含两个线程组的测试计划。

TG1:生成样本数据的源文件。 (432000条样本记录)TG2:使用示例数据向另一个应用程序发出请求。

这在短时间内工作正常,但当我长时间运行它时,它会因内存不足错误而终止。

我使用 VisualVM 查看了正在运行的应用程序,可以看到 Activity 线程数几乎从启动时就超过 14,000 个。使用过的堆猛增并继续死亡。

该测试预计将在 43200 秒的加速期内创建 432000 个线程。这是 12 小时内每秒 10 个线程。

有趣的是,非 headless 构建比没有附加监听器的 headless 构建持续时间更长。

我不确定这些线程来自哪里?我假设它们是要被触发的线程,它们是预先创建的吗?

我在这里遗漏了一些东西。

编辑

我已经尝试过“延迟线程创建直到需要”选项。线程仍然是提前创建的,我也有同样的问题。

最佳答案

Headless 模式实际上是运行 JMeter 负载测试时推荐的模式。

您的场景是什么?如果 12 小时内有 432000 个请求,即每秒仅 10 个请求,那么您的配置似乎不太正确,您需要使用 Constant Throughput Timer “告诉”JMeter 将负载保持在每秒 10 个请求的速率。 。

如果您希望创建 432000 个 Activity 并发线程,您需要考虑 Distributed Testing ,但是我不认为你真的需要这么多并发线程。

关于java - jmeter headless 创建大量 Activity 线程,如可视虚拟机中所示。内存不足错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27612423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com