服务器节点实例的增加不会提高应用程序的吞吐量

Increase in server node instances doesn't improve throughput of an application

提问人:Ziaullhaq Savanur 提问时间:10/6/2023 最后编辑:Ziaullhaq Savanur 更新时间:10/16/2023 访问量:35

问:

我们使用 K8s 和 Rancher 来部署基于 java 的微服务,并使用 JMeter 来执行负载测试。

1):当我们在其中一个微服务上运行负载测试时,即使使用非常简单的控制器方法,它也只接受请求并发送响应。enter image description here微服务将吞吐量显示为 90requests/sec - 表示每秒处理 90 个请求。

2):即使增加了负载测试的相同微服务实例的实例,我们所做的负载测试的吞吐量也不会增加一点。 这意味着即使有两个相同的微服务的实例正在启动并运行,并且它们都在响应 JMeter 触发的请求。吞吐量保持不变,即每秒 90 个请求。

我们尝试找出微服务的两个服务是否都在响应我们正在执行的负载测试,并知道这两个服务都正确地执行了工作。意味着两者都响应从 JMeter 触发的请求,但吞吐量保持不变。

根据我对水平扩展的理解,当一个服务的吞吐量为 90requests/sec 时,那么当我们有两个服务时,吞吐量应该扩展(至少它会翻倍,即它应该是 180requests/sec)

注意:我们还尝试从不同的系统进行负载测试(意味着我和我的同事从我们的系统进行了负载测试,但组合吞吐量为 90requests/sec,即 45 + 45 = 90)

kubernetes jmeter 负载测试 rancher

评论

0赞 David Maze 10/7/2023
如何运行负载测试?(JMeter 是否通过负载均衡器在集群外的另一个 Pod 中运行,或者其他东西?应用程序是否依赖于外部资源(如数据库)或其他服务来呈现问题中显示的 PNG 文件?您是否检查过 HPA 是否实际上正在预配部署的更多副本?kubectl port-forward

答: 暂无答案