开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

有办法在jvm里找某个类的实例吗? 然后再找出哪些实例引用了这个实例,在不dump快照的情况下?

有办法在jvm里找某个类的实例吗? 然后再找出哪些实例引用了这个实例,在不dump快照的情况下?

展开
收起
芬奇福贵 2023-04-10 15:57:01 407 0
2 条回答
写回答
取消 提交回答
  • arthas试试。

    此答案来自钉钉群“【2】Apache Flink China 社区"

    2023-04-10 17:33:18
    赞同 展开评论 打赏
  • 发表文章、提出问题、分享经验、结交志同道合的朋友

    你好,可以通过Java的JMX来实现在运行时监控JVM内部的状态。

    • 使用JConsole或VisualVM等JMX客户端工具连接到该JMX端口,可以看到JVM的运行状态信息。

    • 在客户端工具中找到MBean(管理Bean),然后找到某个类的实例对应的MBean,通过MBean可以获取到该类的实例。

    • 使用工具中的Heap Dump(堆转储)功能,生成堆转储快照文件。打开该快照文件,可以在其中找到引用了该实例的对象。

    2023-04-10 16:05:58
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关电子书

更多
阿里云MaxCompute百问百答 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载