我们有一个旧版 webapp,我们想升级到 Spring Boot 1.5.8.RELEASE。我们在旧版 webapp 上运行了负载测试,然后在使用 YourKit 分析应用程序时在迁移到 Spring boot 的版本上运行了相同的负载测试。我们看到迁移后的应用程序的响应时间慢了约 50%。这是一个 REST API 网络应用程序。我们发现有 2 个领域出现放缓。
- mysql 方法(例如 com.mysql.jdbc.PreparedStatement.executeQuery() PreparedStatement.java)
- 应用过滤链
mysql 方法在 Spring Boot 应用程序中显示为热点,但不是旧的,即使我们使用相同的 mysql 连接器和相同的数据库配置。
我们检查/尝试过的事情
- 我们检查了依赖树是否相同
- 所有应用程序配置都相同
- 我们在遗留应用程序中运行 tomcat 并在 Spring Boot 中使用嵌入式 tomcat
问题
- 有没有我们应该研究的领域?
- 网络上是否有很好的资源可用于在 Spring Boot 迁移期间识别和修复性能问题?
- 您迁移到 Spring Boot 的经历是什么?
- 我们还应该如何使用 YourKit 来识别性能问题?
依赖差异
mvn dependency:list