我在本地计算机上运行Tomcat / Spring服务器,并且我正在运行另一个程序,该程序一个接一个地连续向服务器发送POST请求。每个请求都会导致远程Postgresql数据库更新,并在发送下一个请求之前完成(刷新响应代码)。
在大约100个请求之后,服务器开始花费更长的时间来响应。在大约200个请求之后,服务器停止响应并采取所有可用的处理,直到我在Eclipse或Windows任务管理器中手动终止它。
有一次,服务器吐出了关于垃圾收集的错误,但是在我尝试过这几次的过程中,我还没有看到它。当我看到这个垃圾收集错误时,我每20个请求添加一个5秒的暂停,试图为服务器提供垃圾收集的时间,但它似乎没有帮助。
如何追踪并解决此服务器过载的原因?
答案 0 :(得分:0)
您是否监控过内存使用情况?但是有一些方法可以追踪问题:
查看数据库连接是否已关闭。
可能会有更多的事情导致它,但visualVM可以成为您开始诊断这些问题的工具。