Java中用Flight Recorder监控Hibernate事件

💡 原文中文,约4800字,阅读约需12分钟。
📝

内容提要

本教程介绍了使用Java Flight Recorder(JFR)监控Hibernate事件,并使用JDK Mission Control工具进行分析。通过添加hibernate-jfr依赖项,配置应用程序以发出Hibernate-JFR事件。然后,创建一个示例Spring Boot应用程序来演示Hibernate JFR事件,并启动应用程序以飞行记录模式运行。还介绍了Hibernate JFR事件的类型和属性,并使用JDK Mission Control对JFR事件进行分析。

🎯

关键要点

  • 本教程介绍了使用Java Flight Recorder监控Hibernate事件,并使用JDK Mission Control工具进行分析。
  • Java Flight Recorder (JFR) 是用于监控Java应用程序的低级代理,能够记录Java虚拟机和框架生成的事件。
  • 为了从Hibernate生成JFR事件,需要在pom.xml中添加hibernate-jfr依赖项。
  • 示例Spring Boot应用程序使用spring-data-jpa和ehcache作为Hibernate L2缓存,演示Hibernate JFR事件。
  • 应用程序以飞行记录模式启动时,需要传递-XX:StartFlightRecording作为VM参数。
  • 可以通过启用hibernate.generate_statistics配置属性来生成日志,验证L2缓存设置。
  • hibernate-jfr jar定义了Hibernate在飞行记录期间产生的多种事件,如缓存获取事件、JdbcBatchExecution事件等。
  • 使用JDK Mission Control分析JFR文件时,可以查看Hibernate ORM事件并进行分组和基本分析。
  • 在JDK Mission Control中,可以按事件线程对Hibernate事件进行分组,以识别执行时间较长的线程。
➡️

继续阅读