问题标签 [yourkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Yourkit API 堆转储分析
是否可以使用 yourkit API ( https://www.yourkit.com/docs/java/api/index.html ) 来检查堆中的对象?例如,检查意味着获取堆中对象字段的值。
MemorySnapshot 类似乎相当有限。
java - 如何确定哪些类导致 Finalizer 内存泄漏
我正在使用 yourkit java profiler 来尝试确定我的内存泄漏来自哪里。我认为这是由于大量 java.lang.ref.finalizer 对象的收集/处理速度不够快。我编写的代码都没有实现 finalize 方法,但我正在使用几个可能的库。您的工具包中是否有方法或其他方式来确定哪些对象未完成?
apache-spark - 使用 YourKit 分析 Spark 应用程序
我有一个带有 Cloudera 5.10 的集群。对于分析,我正在使用参数运行 spark-submit:
它只对驱动程序有效。当我将此选项用于执行程序时,我遇到了异常
我在每个节点上都找不到任何有用的日志和相同的异常。如果我使用本手册则相同,请在此处输入链接描述
如果我只为驱动程序保留配置,一切正常,我可以使用 YourKit 连接到驱动程序 可能是什么问题?
java - 有什么方法可以分析截断的 Java 堆转储(hprof 文件)?
在我的工作中,我们遇到了一个难以重现的 OOM 问题。或者,更准确地说,它很容易在一个系统上重现,使该系统无法使用,但在给定相同输入的情况下很难在其他任何地方重现。
该应用程序正在使用服务包装器作为服务运行。我们确实设法更改了配置以通过在 OOM 上输出堆转储文件的选项来启动它,但不幸的是,它们被截断了,很可能是由于服务包装器在写入文件时超时并终止了进程。这很明显,因为最大内存设置为 1GB,而 hprof 文件小到 700MB,这对于 OOM 上的整个堆来说太小了。
额外配置包装器以使 java 进程有更长的时间来写出堆需要大量的跳跃,但我们正在使用以下两个选项来实现这一点:
问题是,我可以对截断的 hprof 文件做些什么有用的东西吗?Eclipse MAT 让他们窒息。Jhat 似乎加载了它们,但随后只显示了 3 个大小为 0 的 Java.Object 实例,没有别的。我试过YourKit,它不能写它的oids文件。
在我看来,这些文件中应该包含一些有用的、可访问的信息。有什么工具可以读取那里的内容吗?
感谢您的时间!
java - Yourkit Java Profiler:Object.wait() 的 WALL TIME 测量可能不正确
我要解决的第一个问题是查看跨多个线程的方法的所有子调用的运行时间。但是我用一个小型应用程序复制了我的问题,其中我有一个线程执行一个主要按预期等待的方法。
如您所见,我对 pool-1-thread-2 执行方法“com.sum.$Proxy10.uploadWaiting()”特别感兴趣,所以我确定该方法在 getConnection( ) 下降到 Object.wait(long) 但是我想看看在 com.sum.$Proxy10.uploadWaiting() 中的 getConnection() 中花费的 WALL TIME 的确切百分比是多少。我去“方法列表”->我的方法->合并的被调用者
如您所见,getConnection() 仅占我方法总时间的 1%。而且我已经将我的采样配置为对所有方法进行挂壁时间。正如您在屏幕截图中看到的那样,这些都标记为 [Wall Time]。我正在使用 Yourkit 2015 build 15052。
问题:为什么 getConnection() 不显示 90% 之类的东西?它仍然只计算 CPU 时间而不计算 Wall Time 吗?
weblogic - Weblogic 服务器启动分析工具
如果我想分析我的 weblogic 启动并调整启动时间,最好的工具或方法是什么。
可以通过visual vm或者jprofiler或者yourkit来完成吗?什么是最好的?
java - 将应用程序从 Spring 迁移到 Spring Boot 的性能下降
我们有一个旧版 webapp,我们想升级到 Spring Boot 1.5.8.RELEASE。我们在旧版 webapp 上运行了负载测试,然后在使用 YourKit 分析应用程序时在迁移到 Spring boot 的版本上运行了相同的负载测试。我们看到迁移后的应用程序的响应时间慢了约 50%。这是一个 REST API 网络应用程序。我们发现有 2 个领域出现放缓。
- mysql 方法(例如 com.mysql.jdbc.PreparedStatement.executeQuery() PreparedStatement.java)
- 应用过滤链
mysql 方法在 Spring Boot 应用程序中显示为热点,但不是旧的,即使我们使用相同的 mysql 连接器和相同的数据库配置。
我们检查/尝试过的事情
- 我们检查了依赖树是否相同
- 所有应用程序配置都相同
- 我们在遗留应用程序中运行 tomcat 并在 Spring Boot 中使用嵌入式 tomcat
问题
- 有没有我们应该研究的领域?
- 网络上是否有很好的资源可用于在 Spring Boot 迁移期间识别和修复性能问题?
- 您迁移到 Spring Boot 的经历是什么?
- 我们还应该如何使用 YourKit 来识别性能问题?
依赖差异