我正在使用 jmeter 生成性能测试,为了让事情保持简短和直接,我从 json 文件中读取初始数据,我有一个线程组,在读取数据后我随机化某些值以防止数据重复它,然后我使用变量将最终数据传递给端点,这将最终形成一个由端点接收的 json 主体,它基本上会在数据库中生成一个新事务。我还添加了一个恒定计时器,以在请求之间添加 7 秒的延迟,测试持续时间为 10 分钟且没有加速,我计算每秒的请求数如下:
1 分钟有 60 秒,每个请求有 7 秒的延迟,那么可以说每分钟我每分钟发送大约 8.5 个请求,这是我的计算 (60/7) = 8.5,如果测试持续10 分钟,然后我乘以 (8.5*10) = 85,在 10 分钟内给我总共 85 个事务,所以我应该能够在测试完成后看到在数据库中创建的完全相同数量的事务。
当我运行 10-20-40 个用户时这是真的,在负载测试运行后我查询数据库并且我得到完全相同数量的事务但是,随着我增加线程组中的用户,这不再发生,例如,如果我设置 1000 个用户,我应该能够在 10 分钟内生成 8500 个事务,但事实并非如此,数据库仅创建大约 5.1k 个事务。
发生了什么事,出了什么问题?为什么它最初按预期工作,而当我增加用户时却没有?如果需要,我可以提供更多信息。请帮忙。