了解 Jprofiler 中的调用树视图计时
Understanding call tree view timings in Jprofiler
在 jprofiler 中,CPU 视图中的时间与调用树视图中的数据库 (jdbc/JPA) 中的时间如何相互关联?我如何查看瓶颈是在数据库调用还是在 java 代码
是 CPU 的调用树部分中显示的时间查看整个请求的累积时间并包括 JPA 和 JDBC 调用所花费的时间,还是仅CPU 且不包括 IO 时间。请求的总时间是我在 CPU 视图的调用树部分中看到的,还是数据库和 CPU 视图的调用树时间的总和
不同行的问题:我看到像 BigDecimal 这样的 java 核心 类 花费了大量时间。 Double.value 个,Calendar.getInstance 个。它们是我的应用程序对这些方法的大量调用。此外,如果我将这些 类 添加到我的过滤器设置中的忽略 类 列表中,我调用这些 类 的方法的总时间会减少。所以我可以假设这些方法中报告的大量时间实际上是 Jprofiler 引入的开销。
Is the time shown in call tree section of CPU views cumulative time of the
whole request and include the time taken by JPA and JDBC calls
仅当您将 CPU 视图顶部的 "Thread status" 选择器设置为 "All times" 时。默认情况下,它设置为 "Runnable" 并且不包括套接字等待数据库调用完成的时间。
So can I assume that the large time reported in these methods was actually
overhead introduced by Jprofiler.
使用检测,算法代码的开销会变得非常高,尤其是因为它降低了热点编译器消除方法调用的可能性。您要么必须将过滤器调整为仅仪器 "high-level" 类,要么切换到 "Sampling" 以获得实际的时间测量值。
在 jprofiler 中,CPU 视图中的时间与调用树视图中的数据库 (jdbc/JPA) 中的时间如何相互关联?我如何查看瓶颈是在数据库调用还是在 java 代码
是 CPU 的调用树部分中显示的时间查看整个请求的累积时间并包括 JPA 和 JDBC 调用所花费的时间,还是仅CPU 且不包括 IO 时间。请求的总时间是我在 CPU 视图的调用树部分中看到的,还是数据库和 CPU 视图的调用树时间的总和
不同行的问题:我看到像 BigDecimal 这样的 java 核心 类 花费了大量时间。 Double.value 个,Calendar.getInstance 个。它们是我的应用程序对这些方法的大量调用。此外,如果我将这些 类 添加到我的过滤器设置中的忽略 类 列表中,我调用这些 类 的方法的总时间会减少。所以我可以假设这些方法中报告的大量时间实际上是 Jprofiler 引入的开销。
Is the time shown in call tree section of CPU views cumulative time of the whole request and include the time taken by JPA and JDBC calls
仅当您将 CPU 视图顶部的 "Thread status" 选择器设置为 "All times" 时。默认情况下,它设置为 "Runnable" 并且不包括套接字等待数据库调用完成的时间。
So can I assume that the large time reported in these methods was actually overhead introduced by Jprofiler.
使用检测,算法代码的开销会变得非常高,尤其是因为它降低了热点编译器消除方法调用的可能性。您要么必须将过滤器调整为仅仪器 "high-level" 类,要么切换到 "Sampling" 以获得实际的时间测量值。