性能测试-尽管API只返回一个空字符串,但TPS仍在缓慢地爬行



所以我遇到了一些不理解的性能问题。

我有一个SpringBootRest API应用程序,我正在测试一个GET请求,该请求进行一些外部服务调用。无论我在测试中投入多少用户,它都有一个稳定的TPS。我投入的用户越多,响应时间就越长,但TPS保持稳定,应用程序永远不会慢到爬行。

然而,为了测试基线性能,我更改了API,使其不进行任何外部服务调用,只返回一个空字符串。响应时间从300-400ms提高到30ms,TPS激增。然而,在很长一段时间内,它不能处理超过10个用户如果我给它超过10个用户,性能会随着时间的推移而下降到爬行,尽管返回空字符串的GET请求很容易

这里可能发生了什么?这是正常行为吗?我如何才能找到更多信息并进一步调试。谢谢

但是它现在不能在很长一段时间内处理超过10个用户

经典的内存泄漏,请使用APM工具或探查器工具,如JProfiler或YourKit,它应该会为您提供有关导致问题的函数的更多信息。

或者(或除此之外(使用静态代码分析工具,该工具可能会检测未关闭的句柄、连接、静态对象、设计不佳的对象,这些对象没有实现hashCode((或equals((函数,等等。

最新更新