2013-05-22 39 views
0

该应用程序在apache tomcat 7.0.37上运行。它是使用JPA和MySql的Java/GWT应用程序。Web应用程序冻结。我如何找到原因?

有时我们发现它完全没有响应。今天是5个月内第二次发生。重启后它工作正常。当交通流量较小时,这种行为都会被观察到。

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

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

感谢, 的Kisor

回答

0

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

0

你提到GWT这完全是前端和最有可能什么都没有做与服务器的问题。

如果问题是基于gwt的浏览器客户端,您可能会遇到内存性能问题(并刷新浏览器将重置它 - 不知道重新启动,重新启动服务器或刷新客户端的内容)。

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

同样,如果这是有问题的gwt客户端,可以使用Speedtracer轻松进行分析。

Chrome浏览器>速度示踪>时间轴>内存 (也看看事件)

如果这是一个问题,你可能需要采取一个深深的看着你的代码

+0

它在服务器重启后生效。这是服务器端问题,可能是死锁或数据库连接耗尽。当观察到这种情况时,没有用户可以采取任何行动。 –

+0

也许您的连接池无法正常工作。 –

相关问题