【问题标题】:Play Framework takes too long to load with hibernate使用休眠加载 Play Framework 需要很长时间
【发布时间】:2014-04-08 05:11:55
【问题描述】:

我的项目使用带有 Hibernate 和 Postgres 的 Play Framework 2,但每次我必须重新加载以测试某些东西时,最终第一次(开发模式)最终满足我的请求需要很长时间(大约 2 分钟)。

所以基本上,它需要很多时间来完成

[info] play - database [default] connected at jdbc:postgresql://myDBConnection

[info] play - Application started (Dev)

我尝试降低日志级别,但两者之间没有任何日志,所以我不知道里面发生了什么需要这么多时间,但这严重影响了我的工作能力,因为加载需要很长时间。

有什么明显或简单的解决方法吗?

【问题讨论】:

    标签: hibernate postgresql playframework-2.2


    【解决方案1】:

    以防万一其他人看到这一点,我设法通过删除 JPA 映射并仅使用普通的旧休眠模式来修复它,就像我会在其他任何地方使用它一样。我的连接在启动时达到了 30 多秒到大约 2 秒。好多了!

    【讨论】:

      【解决方案2】:

      这对于在DEV 模式下运行的Play! Framework 来说是正常的。

      在开发模式下,服务器启动时默认启用auto-reloadhot swap,这意味着对于每个请求,Play 将验证项目并重新编译所需的源。此外,如果有多项更改(主要是模型中的更改),应用程序将自动重新启动。

      我也猜想在您的应用程序启动时 - 您有一些测试数据已加载到您的数据库中。 (如果是,则每次您的模型更改并且您的应用程序[自动]重新启动时都会发生此重新加载。此外,JPA 验证器将确保您的关系模型与您的 JPA 定义匹配。)

      请注意,这只发生在初始请求上。如果每个请求都发生这种情况,那么您有一些错误的 SQL 需要很长时间才能执行。

      【讨论】:

      • 是的,这只发生在初始请求上,我知道它每次在开发模式下都会重新加载,但 2 分钟?!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-19
      • 2012-04-17
      • 2021-05-14
      • 2012-06-24
      • 2017-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多