我有10k用户的测试API的要求。我选择的是:10k用户API负载测试,我选择jmeter
- 的JMeter
- Linux服务器安装的JMeter并用10k用户
- 一个节点抛负载现在
将用相同的操作执行API:
- 登录
- 带有发布参数的预订酒店
- 更新预订详情
- 保存的预订
我想为API测试使用上面用10k的用户,上面的工具是不够或者我应该找像loadimpact,装载机或blazemeter其他的选择吗?
我有10k用户的测试API的要求。我选择的是:10k用户API负载测试,我选择jmeter
将用相同的操作执行API:
我想为API测试使用上面用10k的用户,上面的工具是不够或者我应该找像loadimpact,装载机或blazemeter其他的选择吗?
如果您在谈论API,您应该考虑“每秒请求数”而不是“用户数”,因为我非常怀疑最终用户会通过curl或Postman向API端点发送请求。
无论你的目标是否是“用户”或“每秒请求”,它是只有你谁可以回答,因为它取决于许多参数,如:
所以,你应该采取行动如下:
见What’s the Max Number of Users You Can Test on JMeter?文章的更多细节。
整个答案是一个精心制作的它取决于。
您可以做的最好的事情是运行PerfMon代理程序在生成负载的服务器上以及运行被测系统的服务器上。
通过这种方式,您应该看到(在CPU利用率和可用内存统计信息中)您是否已经最大程度地提供了API提供的服务器可以执行的操作,或者它是否是您的负载生成器已经停止运行。在第一种情况下,您根据所运行的硬件和配置获得了一些readline。在第二种情况下,您有一个指示可以使用超过1个方框来生成负载或调查设置和选项。
详细了解PerfMon JMeter plugin了解确切详情。
Jmeter是为它设计的,你可以添加更多的细节,所以答案不会基于意见? – user7294900
它取决于用户场景的复杂程度和逼真程度......您是在测试每个API调用的readline在哪里,还是在用全部用户流模拟10k用户(例如,获取所有项目ID,项目页面,按日期或按字母顺序排序,获取某些ID的项目详细信息,修改少量项目...)。您**应该只是单独处理API端点。您是否可以模拟10k用户会话与API是另一回事。 – diginoise
@ user7294900 - 是的,我刚刚添加了详细操作。 –