【问题标题】:Performance issues after migrating from Spring Boot 1 to Spring Boot 2从 Spring Boot 1 迁移到 Spring Boot 2 后的性能问题
【发布时间】:2018-10-04 10:39:17
【问题描述】:

我最近将一个相当大的应用程序从 Spring Boot 1 迁移到 Spring Boot 2。一切都构建得很好,但我很快意识到,构建时间是之前版本的两倍(从 ~10 到 15 分钟到约 25-35 分钟)。

在测试期间,应用程序上下文使用注释 @DirtiesContext 重新启动大约 15 次。我对这种用法并不满意,但目前无法以不同的方式解决。我可以肯定地说,在 Spring Boot 2 中启动应用程序上下文所需的时间比在 Spring Boot 1 中要长。

有没有人有类似的问题?我应该如何开始分析这个?任何想法可能是什么原因?它是否基于区分两个 Spring Boot 版本的默认行为?

【问题讨论】:

  • 弄清楚什么需要更长的时间......我们遇到了内存问题,导致激进的 GC 行为大大减慢了速度。
  • 根据我们(Spring Boot 团队的经验),Spring Boot 本身在版本 2 中的启动速度应该比在版本 1 中更快。您使用的依赖项可能并非如此更改的版本。我同意 Marco 和 Marten 的观点,即您需要确定什么需要更长时间。分析器是一个很好的方法。

标签: java spring performance spring-boot migration


【解决方案1】:

在这种情况下,我认为最好的方法是使用分析器,例如 VisualVM。 即使在本地,您也可以了解正在发生的事情。 实际上,在任何版本更改后进行分析总是一个好主意。

【讨论】:

  • 好的,感谢您的这些想法,我会在知道更多信息后尽快更新您
猜你喜欢
  • 2019-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-07
相关资源
最近更新 更多