JDK14新特性:JFR、JMC与JFR事件流详解
123 浏览量
更新于2024-09-01
收藏 576KB PDF 举报
Java中JDK14的新特性——Java Flight Recorder (JFR)、Java Mission Control (JMC) 和 JFR事件流——在本次讨论中占据核心位置。JDK14引入了重要的改进,特别是JFREventStreaming,使得这些工具的功能更为强大。
JFR作为集成于JVM内的诊断和性能分析工具,其设计目标是提供一种低开销的方式监控应用程序和JVM的行为。由于它是内置于JVM中,对性能的影响非常小,通常不会超过1%,这对于实时监控而不会显著影响系统性能至关重要。JFR的历史可追溯到Oracle收购BEA时期,早期在JRockit JVM中出现,随后被移植到Oracle JDK,直到JDK11,JFR和JMC成为开源组件。
JFR的工作原理主要涉及事件的生成、存储和处理。每个事件由时间戳、事件名称和数据组成,涵盖持续性事件、即时触发事件和抽样事件。为了优化性能,用户可以根据需要选择事件类型。JFR收集到的事件首先存储在本地线程缓存,然后转移到全局内存缓存,最后写入磁盘。如果不希望写入磁盘,可以选择保留部分事件数据,这导致了JDK14的JEP349。
JDK14新增的JFREventStreaming功能允许用户实时流式传输事件数据,这对于需要远程监控或大规模数据处理的场景尤为有用。这一特性极大地扩展了JFR的应用范围,使得数据分析更加灵活和高效。
另一个关键组件是JMC,这是一个图形用户界面工具,专门用来解析和分析JFR产生的数据文件。它提供了直观的界面,使开发者能够深入洞察应用的性能瓶颈和问题,便于进行问题定位和优化。
启动JFR的方式多种多样,包括在命令行参数中添加特定选项(-XX:StartFlightRecording等),用户可以根据需求选择合适的启动方式。JDK14的这些改进使得Java开发者有了更强大的工具来优化和监控他们的应用程序,提升整体性能和用户体验。
2031 浏览量
361 浏览量
2024-11-11 上传
390 浏览量
1022 浏览量
2020-10-19 上传
197 浏览量
571 浏览量
110 浏览量
weixin_38564085
- 粉丝: 5
- 资源: 937