【问题标题】:Spring JPA Inconsistent ResponsesSpring JPA 不一致的响应
【发布时间】:2015-12-26 21:21:26
【问题描述】:

我有一个 Spring 提供 Rest 服务,以及一个调用 Rest 端点的网页。在 Spring 之后,我有一个 Mysql 数据库和 JPA 来访问它。

最近,当我的网页调用端点时,它们返回的响应不一致。也就是说,有时响应是预期结果,有时是两个异常之一。

Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.TransactionException: JDBC begin transaction failed: 
Could not roll back JPA transaction; nested exception is javax.persistence.PersistenceException: unexpected error when rollbacking

更奇怪的是,当我在浏览器中手动调用端点时,我总是得到预期的响应。 我的网页在很短的时间内调用了 6 或 7 个端点,这可能是问题吗?如果没有,知道是什么导致了这种行为吗?

【问题讨论】:

    标签: java spring exception jpa


    【解决方案1】:

    由此,很可能是您的数据库收到了太多请求,并且请求超时,从而导致异常。但是,您只能确定是否还检查了数据库的日志,因为它会提供有关连接断开原因的信息。

    如果是这种情况,您可以采用多种方法:

    • 增加 Web 容器和/或数据库端的超时时间
    • 尽量减少对数据库的请求数
    • 优化连接池,避免超时

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-01
      • 2016-08-27
      • 1970-01-01
      • 1970-01-01
      • 2016-06-01
      相关资源
      最近更新 更多