java - 如何分析hibernate JPA session 信息?

标签 java performance spring hibernate jpa

我们在生产中拥有 Spring Hibernate JPA Web 应用程序。 session 对象中存在内存泄漏的嫌疑。我们正在使用 Apache POI 将 excel 记录上传到 MYSQL。提交频率为 10 条记录,但每次提交需要 5 到 10 秒的暂停,整个导入过程中 CPU 几乎达到 100%。有什么方法可以分析我的应用程序中的 hibernate session 并找到导致 CPU 使用率如此高的进程。我正在查看 Rhinos Hibernate Profiler,但它的配置似乎令人困惑,需要更改代码。由于我们需要分析生产或阶段实例,是否有任何 JPA Hibernate session 信息分析器而不需要对应用程序配置/代码进行太多更改?

最佳答案

使用 Visual VM,并安装所有插件。当您启动应用程序时,将其附加到应用程序的 JVM PID。它将向您显示内存、线程以及更多信息。

我认为在生产服务器上进行分析不是一个好主意。将该代码放在另一个盒子上并长时间运行大量负载。这将显示问题。

关于java - 如何分析hibernate JPA session 信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17589511/

相关文章:

java - 如何使用Java Spring仅在浏览器的一部分中显示pdf文件?

java - Netbeans 中的 JAXB : how to get Lists instead of vectors?

java - JPA 持久性.xml

java - 如何衡量Java中数据库的性能?

java - 如何在 Spring 中通过带有类参数的泛型类型创建单例?

java - org.h2.jdbc.JdbcSQL异常 : Schema "MYAPP" not found; SQL statement

java - @Override 编译报错,实现一个接口(interface)(eclipse jdk1.6.0_23 linux)

java - 调用 getChoice() 方法时出现错误,我不知道为什么

java - jdk-9/jdk-8 和 jmh 中的新实例与新实例

MySQL 内存使用率增长到 100%