诊断的EclipseLink的连接延迟?(Diagnosing an EclipseLink con

2019-09-26 13:21发布

我使用的是3.1.2的GlassFish服务器和我的web应用程序使用的EclipseLink 3.1.2作为JPA提供商。 GlassFish的是在本地运行,MySQL服务器是远程的。

问题是,当我开始我的服务器的服务器挂了很长的时间,用下面的线为日志中的最后一件事。

[#|2012-03-26T14:37:31.765-0700|INFO|glassfish3.1.2|org.eclipse.persistence.session.file:/Users/alan/NetBeansProjects/MyApp/target/MyApp/WEB-INF/classes/_com.myapp|_ThreadID=10;_ThreadName=Thread-3;|EclipseLink, version: Eclipse Persistence Services - 2.3.2.v20111125-r10461|#]

在这里等了2-3分钟后,通常会继续,然后作为一切正常。 我的web应用程序的工作原理与数据的基础上我希望的方式。

如果NetBeans的尝试启动服务器时,它会经常超时,以为一开始就失败。 如果我开始与asadmin命令域,它需要的时间是相同的,但它成功。

我家里有一个相同的系统连接到不这样做同样的MySQL服务器。

所以,我怎么告诉的EclipseLink告诉我更多有关它正在等待什么呢?

更新:

这里是我的persistence.xml文件 - 没什么了不起。 是可被用来帮助有特定的EclipseLink的命令?

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="com.myapp" transaction-type="JTA">
    <jta-data-source>jdbc/MyApp</jta-data-source>
    <exclude-unlisted-classes>false</exclude-unlisted-classes>
</persistence-unit>

Answer 1:

如果您在Windows上运行杀灭或Ctrl休息,爪哇应该转储当前线程,所以你可以看到它正在等待。 或暂停线程调试。

包括你的persistence.xml。 检查您的连接池的大小,如果你的网络能正常访问您的数据库。 有多少类是在你的jar文件? 您是否尝试过禁用编织或上市类?



文章来源: Diagnosing an EclipseLink connection delay?