Profiler 工具比较

夹谷志
2023-12-01

一.监控意义:

       在我们的日常开发中难免遇到程序写的有漏洞的时候,比如数据库连接没有释放,过多的创建对象,死锁,程序的瓶颈等等问题。如何解决这些问题呢,优秀的java profiler 工具从cpumemorythread三个方面给我们提供了量化的显示,为我们处理内存溢出、死锁、优化代码提高性能提供了依据。(背景:profiler数据的来源:一种是调用jvm的接口,另一种是监控类的加载等信息。)本文主要比较目前比较流行应用比较广泛的Profiler工具:jprofileryoukit java profiler

二.Jprofileryoukit java profiler

1、连接远程jboss服务器:

相同:两者配置监控远程机器的过程大同小异,都可以利用配置向导更改jboss启动脚本(run .bat/run.sh)加入虚拟机参数 –agentlib等参数。利用新的启动脚本启动服务器,然后运行各自的UI连接服务器端口就ok,详细过程请参见各自的帮助文档。

       不同:Jprofiler UI启动session 时需要配置参数,远程服务器必须等待UI传送这些参数后才能启动,参数主要包括(filter settingprofile settingtrigger setting),参数在session连接过程中更改不能生效,只有重新启动时才能生效。其中proflier setting 设置的不同,对客户机性能和UI视图产生不同的影响,由于监控的关注面不同,可能导致你频繁的重启ui和服务器。Yourkitprofiler setting 你可以通过ui进行实时配置,并且不用重启ui和服务器,较方便。

 

2.监控以及参数的显示。

       相同:这两款工具都可以对cpu利用情况,内存使用情况,线程的状况等进行监控,功能基本相同 两款工具经过不断的改版,已经相当成熟了。

       不同:jprofiler对数据的展示比较清晰,通过柱状以及线状图形对cpu利用情况,hotspots 每个方法的cpu时间,有一个较清晰的展示。但是视图分类不够清晰。Youkit 视图展示区域较小,但是视图分类很清晰方便查看。

 类似资料: