大型商城网站建设,莆田网站建站建设,网站备案技巧,学做网站平台目录
一、什么是JProfiler#xff1f;
二、JProfiler 功能结构
1、分析代理
2、记录数据
3、快照
三、安装 一、什么是JProfiler#xff1f;
JProfiler是一个专业的工具#xff0c;用于分析运行中的JVM内部发生的事情。当您的生产系统出现问题时#xff0c;您可以…目录
一、什么是JProfiler
二、JProfiler 功能结构
1、分析代理
2、记录数据
3、快照
三、安装 一、什么是JProfiler
JProfiler是一个专业的工具用于分析运行中的JVM内部发生的事情。当您的生产系统出现问题时您可以在开发、质量保证和消防任务中使用它。 JProfiler主要处理四个主题
方法调用
这通常被称为“CPU评测”。方法调用可以通过不同的方式进行测量和可视化。方法调用的分析可以帮助您了解应用程序正在做什么并找到提高其性能的方法。
分配
分析堆上对象的分配、引用链和垃圾收集属于“内存分析”类别。此功能使您能够修复内存泄漏通常使用较少的内存并分配较少的临时对象。
线程和锁
线程可以持有锁例如通过对对象进行同步。当多个线程协作时可能会发生死锁JProfiler可以为您可视化它们。此外锁可以被争用这意味着线程必须等待才能获取它们。JProfiler提供了对线程及其各种锁定情况的深入了解。
更高级别的子系统
许多性能问题发生在更高的语义级别上。例如对于JDBC调用您可能想要找出哪条SQL语句是最慢的。对于这样的子系统JProfiler提供了将特定有效载荷附加到调用树的“探测器”。 JProfiler的UI是作为桌面应用程序提供的。您可以在不使用UI的情况下以交互方式评测实时JVM或自动评测。评测数据持久化在快照中这些快照可以使用JProfiler UI打开。此外命令行工具和构建工具集成可帮助您自动化分析会话。
二、JProfiler 功能结构
下面给出了所有重要交互的全貌这些交互涉及概要应用程序、JProfiler UI和所有命令行实用程序。 1、分析代理
“JVM工具接口”JVMTI是一个本机接口探查器使用它来访问信息并添加用于插入自己的检测的挂钩。这意味着分析代理的至少一部分必须实现为本机代码因此JVM分析程序不是独立于平台的。JProfiler支持网站上列出的一系列平台。 JVM探查器被实现为在启动时或稍后某个时候加载的本机库。要在启动时加载它将在命令行中添加VM参数-agentpath:path To native library。您很少需要手动添加这个参数因为JProfiler会为您添加它例如在IDE集成、集成向导中或者如果它直接启动JVM。然而重要的是要知道这就是启用概要分析的原因。 如果JVM成功地加载了本机库它会调用库中的一个特殊函数为评测代理提供初始化自己的机会。然后JProfiler将打印两条以JProfiler为前缀的诊断消息这样您就知道评测是活动的。最重要的是如果您传递-agentpath VM参数则分析代理要么成功加载要么JVM没有启动。 加载后概要分析代理会要求JVMTI收到各种事件的通知例如线程创建或类加载。其中一些事件直接传递分析数据。使用类加载事件分析代理在加载类时插入类并插入自己的字节码来执行测量。 JProfiler可以通过使用JProfilerUI或使用bin/jpenable命令行工具。在这种情况下可能需要重新转换大量已经加载的类以便应用所需的工具。
2、记录数据
JProfiler代理只收集分析数据。JProfiler UI是单独启动的并通过套接字连接到分析代理。这意味着无论评测JVM是在本地机器上还是在远程机器上运行这实际上都无关紧要——评测代理和JProfiler UI之间的通信机制始终相同。 从JProfiler UI您可以指示代理记录数据在UI中显示分析数据并将快照保存到磁盘。作为UI的替代方案可以通过其MBean来控制概要分析代理。使用此MBean的命令行工具是bin/jpcontroller。 控制评测代理的另一种方式是使用一组预定义的触发器和操作。通过这种方式分析代理可以在无人参与模式下运行。这在JProfiler中被称为“离线评测”对于自动化评测会话非常有用。
3、快照
虽然JProfiler UI可以显示实时评测数据但通常需要保存所有记录的评测数据的快照。快照可以手动保存在JProfiler UI中也可以通过触发操作自动保存。 快照可以在JProfiler UI中打开和比较。对于自动化处理命令行工具bin/jpexport和bin/jpcompare可以用于从以前保存的快照中提取数据并创建HTML报告。 从运行中的JVM获取堆快照的一种低开销方法是使用bin/jpdump命令行工具。它使用JVM的内置功能来保存HPROF快照该快照可以由JProfiler打开并且不需要加载评测代理。
三、安装
下载ej-technologies - Java APM, Java Profiler, Java Installer Builder
为Windows和Linux/Unix提供了可执行安装程序引导您逐步完成安装。如果检测到以前的安装则会简化安装。 在macOS上JProfiler使用UI应用程序的标准安装过程提供了一个DMG存档您可以双击它安装在Finder中然后您可以将JProfileer应用程序捆绑包拖动到/applications文件夹。该文件夹在DMG中作为符号链接可见。 在Linux/Unix上安装程序在下载后是不可执行的所以在执行它们时必须预先加上sh。如果传递参数-c安装程序将执行命令行安装。使用参数-q执行Windows和Linux/Unix的完全无人值守安装。在这种情况下您可以传递额外的参数-dirdirectory来选择安装目录。 运行安装程序后它将保存一个文件.install4j/response.varfile其中包含所有用户输入。通过在命令行上传递参数-varfilepath to response.varfile您可以获取该文件并使用它来自动执行无人参与的安装。 要设置无人参与安装的许可信息请将-Vjprofiler.licenseKeylicense-key-Vjprofiler.licenseNameusername和-Vjprofiller.licenseCompanycompanyName作为命令行参数可选。如果您有浮动许可证请使用FLOAT:服务器名称或IP地址而不是许可证密钥。 对于Windows归档文件也以ZIP文件的形式提供对于Linux归档文件则以.tar.gz文件的形式。命令
tar xzvf filename.tar.gz将把.tar.gz档案提取到一个单独的顶级目录中。要启动JProfiler请在提取的目录中执行bin/JProfiler。在Linux/Unix上文件jprofiler.desktop可用于将jprofiler可执行文件集成到窗口管理器中。例如在Ubuntu上您可以将桌面文件拖动到启动器侧栏中以便创建一个永久的启动器项。
将分析代理分发到远程计算机 JProfiler有两个部分一方面是桌面UI和操作快照的命令行实用程序另一方面是评测代理和控制评测JVM的命令行应用程序。您从网站下载的安装程序和档案包含这两部分。 但是对于远程评测您只需要在远程端安装评测代理。虽然您可以在远程机器上使用JProfiler分发版简单地提取存档但您可能希望限制所需文件的数量尤其是在自动化部署时。此外评测代理是可自由重新分发的因此您可以将其与应用程序一起发货也可以将其安装在客户机器上进行故障排除。 要获得带有评测代理的最小软件包远程集成向导会向您显示相应代理存档的下载链接以及包含所有受支持平台的代理存档文件的下载页面。在JProfiler GUI中调用会话-集成向导-新建服务器/远程集成选择“远程”选项然后继续执行远程安装目录步骤。 特定JProfiler版本的HTML概述页面的URL为
https://www.ej-technologies.com/download/jprofiler/agent?version13.0.7单个代理存档的下载URL的格式为
https://download.ej-technologies.com/jprofiler/jprofiler_agent_platform_13_0_7.extension其中platform对应于bin目录中的代理目录名扩展名在Windows上为zip在macOS上为.tgz在Linux/Unix上为.tar.gz。对于Linuxx86和x64组合在一起因此对于Linux x64URL为
https://download.ej-technologies.com/jprofiler/jprofiler_agent_linux-x86_13_0_7.tar.gz代理存档包含所需的本机代理库以及jpenablejpdump和jpcontroller可执行文件。归档文件中的可执行文件只需要Java 6作为最低版本而评测代理可用于Java 5或更高版本。 在远程计算机上提取代理存档后您看到的子目录如下所述。它们是各自目标平台上完整JProfiler安装的子集。