我们在生产中拥有 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/