美文网首页java性能测试性能测试
代码剖析工具Java Interactive Profiler

代码剖析工具Java Interactive Profiler

作者: 果果酱ya | 来源:发表于2017-07-22 13:01 被阅读86次

    JIP是一个100%纯java语言编写的一个代码剖析工具。它的特点包括:
    1.交互性,允许你在JVM运行过程中随时启动或结束剖析器而hprof是在程序启动时就开启JVM退出时结束。
    2.没有本地代码,大部分剖析器都有一些本地组件(native component)因为这些剖析器使用了需要利用本地组件的JVMPI (Java Virtual Machine Profiling Interface),而JIP是纯Java的,它利用了Java5的一些特性。JIP对需要剖析的每一个类的每一个方法添加aspect拦截,这些aspect能够捕获执行数据。
    3.非常低的开销,在很多情况下hprof将会造成一个程序运行变慢20倍,而JIP是轻量级的几乎没有任何开销。
    4.JIP能够通过package/class名设置过滤器

    ************重要配置************

    1. 部署监控
      catalina.sh 文件
      JAVA_OPTS="$JAVA_OPTS -javaagent:/jip-src-1.2/profile/profile.jar -Dprofile.properties=/jip-src-1.2/profile/profile.properties "

                JAVA_OPTS="$JAVA_OPTS -XX:-UseSplitVerifier  -javaagent:/jip-src-1.2/profile/profile.jar  -Dprofile.properties=/jip-src-1.2/profile/profile.properties " 
      
      
                  ./file.sh localhost 15519  /jip-src-1.2/client/test-profile2.txt 
                 ./start.sh localhost 15519  
                ./finish.sh localhost 15519 
      

    默认端口:15599 <profile.properties>

    <profile.properties>
    调用层次的深度 : thread-depth=-1(-1 means no limit)
    层次图中输出方法的个数:
    max-method-count=compact(method.compact.threshold.ms=10)
    排除列表: exclude=com.mentorgen.tools.profile
    ClassLoaderFilter.x
    ClassLoaderFilter.1=com.mentorgen.tools.profile.instrument.clfilter.WebAppClassLoaderFilter
    ClassLoaderFilter.2=com.mentorgen.tools.profile.instrument.clfilter.StandardClassLoaderFilter<默认>

    ************报告展示************

    调用次数|总时间|净耗时|总的百分比|净百分比

    报告展示1

    汇总信息,按调用方法耗时多少倒序排列

    报告展示2

    ************优点************
    a.开源
    b.轻量级
    c.交互式
    d.100%纯java
    e.从监控中过滤掉不关心的类或者包
    f.可集成
    ************缺点************
    a.后续版本无更新
    b.资料相对比较少

    相关文章

      网友评论

        本文标题:代码剖析工具Java Interactive Profiler

        本文链接:https://www.haomeiwen.com/subject/nfhukxtx.html