Java 日食永久连接

Java 日食永久连接,java,mysql,jakarta-ee,jpa,eclipselink,Java,Mysql,Jakarta Ee,Jpa,Eclipselink,我有一个在Tomcat7下使用EclipseLink 2.1.3的项目 困扰我的是,与服务器的连接并没有贯穿应用程序的整个生命周期。 要启动服务器会话,我必须手动访问应用程序 是否有一种方法可以在应用程序部署时自动启动ServerSession并使其始终运行?这样我就可以在长时间空闲后访问应用程序而不必等待 谢谢大家! 编辑: 我在persistence.xml中有以下几行代码 <property name="eclipselink.jdbc.read-connections.min"

我有一个在Tomcat7下使用EclipseLink 2.1.3的项目

困扰我的是,与服务器的连接并没有贯穿应用程序的整个生命周期。
要启动服务器会话,我必须手动访问应用程序

是否有一种方法可以在应用程序部署时自动启动ServerSession并使其始终运行?这样我就可以在长时间空闲后访问应用程序而不必等待

谢谢大家!

编辑: 我在persistence.xml中有以下几行代码

  <property name="eclipselink.jdbc.read-connections.min" value="5"/>
  <property name="eclipselink.jdbc.read-connections.max" value="10"/>
  <property name="eclipselink.jdbc.write-connections.min" value="6"/>
  <property name="eclipselink.jdbc.write-connections.max" value="12"/>


服务器应用程序通常使用JDBC连接池来获取连接并重用它们。根据您使用的池,您可以将其配置为保持一定数量的连接处于打开状态。

什么是服务器会话?你说的是JDBC连接吗?是的,没错。在日志文件中,它显示为一个“ServerSession”-[EL Info]:2012-01-11 18:24:35.181--ServerSession(2672545)--EclipseLink,版本:Eclipse Persistence Services-2.1.3.v20110304-r9073I已经在读写>0和仍然为空的情况下设置了最小连接。在长时间空闲后访问应用程序时,如何诊断服务器正在忙于打开新连接?也许JVM内存刚刚被交换到磁盘,重新加载到主内存需要时间。无论如何,在生产中,你不应该有太多的空闲时间。事实上,当我将应用程序部署到服务器上时,我会将其保留约10分钟。什么都没有发生,但当我访问应用程序时,我可以看到只有EclipseLink登录到数据库服务器。我可以发布完整的persistence.xml文件,可能只有在初始化servlet时才会创建会话工厂,并且在发出第一个请求之前不会初始化servlet。这完全取决于你的webapp的工作方式和配置