Web应用程序冻结。我怎么找到原因?

时间:2013-05-22 12:28:56

标签: mysql web-applications threadpool freeze thread-dump

应用程序在apache tomcat 7.0.37上运行。它是使用JPA和MySql的Java / GWT应用程序。

有时我们发现它完全没有反应。今天是第5次发生在5个月内。重启后工作正常。流量较少时观察到此行为的时间。

我分析了线程转储,但没有发现任何死锁。

对于解决问题的任何帮助表示赞赏。

谢谢, 的Kisor

2 个答案:

答案 0 :(得分:0)

你提到的GWT完全是前端的,很可能与服务器问题无关。

如果问题是基于gwt的浏览器客户端,则可能存在内存性能问题(刷新浏览器会重置它 - 不确定通过重新启动,重新启动服务器或刷新客户端得到什么)。

如果您拥有重新创建许多小部件/ dom元素并挂起它们的客户端代码,那么冻结您的客户端非常容易。

同样,如果这是有问题的gwt-client,您可以使用Speedtracer轻松地对其进行分析。

Chrome> Speed Tracer>时间线>记忆 (也看看事件)

如果这是一个问题,您可能需要深入了解您的代码

答案 1 :(得分:0)

终于找到了原因。我们正在从相同的持久性单元创建2个EntityManagerFactory,并期望它有2个不同的连接池,但它们共享相同的连接池。