【发布时间】:2020-07-31 03:33:33
【问题描述】:
问题描述
启动我的 Spring Boot 应用程序后,通过 JPA/Hibernate 连接到 Postgres 数据库并使用 Spring Data REST,通过 REST API 对应用程序进行的前 10 次调用非常非常慢(范围从 5 到 10秒)。
项目设置和配置
我有一个父“模板”项目,通过它向子项目提供通用域模型。然后这些在每个子项目中都可用,包括父项目中的所有其他 bean。
设置如下:
对于父项目:
-
我自己的通用父 POM(使用 spring-boot-starter-parent 以及其他依赖项)
| ...是父 POM 的
-
父项目(Spring Boot/Spring Data REST,提供通用 bean)
对于子项目:
-
我自己的通用父 POM(同上)
| ...是父 POM 的
-
子项目 -> 有 父项目 作为依赖项
预期和实际结果
我尝试在两个项目中创建(通过 HTTP POST,使用 REST API)同一实体的多个实例。使用父项目,实体在大约 0.1 秒内创建,始终如一。但是在子项目中,对于完全相同的实体,前 10 个 - 并且始终是 10 个 - HTTP 调用(POST 和 GET)非常慢,每个请求最多 10 秒。预期的行为是从第一次调用中看到相同的速度。
在前 10 个请求之后,性能与父项目相似。
我不知道为什么会发生这种行为。如果有人有建议,将不胜感激!
【问题讨论】:
标签: java hibernate spring-boot spring-data spring-data-rest