zoukankan      html  css  js  c++  java
  • 分析定位问题思路

    一、查看现场

    查看现场包括如下几个步骤:

    1、快照分析

    • 功能:观察程序当前的状态
    • 场景:检查程序当前是否处于整体异常状态
    • 举例:gdb、Xmap、mat、jstack

        Dump的时候系统容易挂掉,因此在JVM里加了个参数,在OOM的时候自动dump内存:-XX:+HeapDumpOnOutOfMemeryError

       参见:http://ifeve.com/one-java-oom/#more-25597

    2、调用分析

    • 功能:观察调用和调用栈
    • 场景:请求出错、请求慢、偶发错误
    • 举例:btrace、Xtrace

    关于Btrace的详细操作指南请参见:https://yq.aliyun.com/articles/7569?spm=5176.100239.yqblog1.102.DGWrRf

                                                              http://blog.csdn.net/chaofanwei/article/details/20224339

    3、聚合分析

    • 功能:按某些维度采样、聚合和对比数据
    • 场景:查找性能问题
    • 举例:perf、Xstat、Xtop

     相应性能工具汇总请参考:http://blog.jobbole.com/76103/

     二、瓶颈分析

          在分析问题经常会碰到一些瓶劲问题,可以采用如下方式来进行分析:

         1、观察

          如:通过perf发现close系统调用消耗了大量CPU;

        2、重现

         如:通过jstack发现大量线程卡在NIO的CloseIntFD上;

       3、分析

       如:通过strace发现close系统调用的处理时间较长;

    参见:http://iamzhongyong.iteye.com/blog/1441285

  • 相关阅读:
    js&jquery避免报错的方法
    if-else用法
    js-form表单元素的自定义属性
    a标签
    jQuery知识集锦
    JDK动态代理
    hibernate之多对一单向关联
    STL算法设计理念
    计算机常识--win7 删除文件、拒绝訪问等等,所有提示权限不够 解决的方法
    大话设计模式C++实现-第8章-工厂方法模式
  • 原文地址:https://www.cnblogs.com/moonandstar08/p/5331065.html
Copyright © 2011-2022 走看看