AIX5.3 CPU占用高问题核查步骤
1、topas查看占用cpu占用最高的进程的PID

2、执行: ps -mp PID -o THREAD 以查找相应进程下所有正在占用 CPU 的线程的TID

您应当查看“CP”列(表示 CPU 占用率),看其中哪些线程的此项值比较高并从中挑选一个线程。

3、通过执行以下命令对服务器进行 Thread Dump:

kill -3 PID

4、将步骤2中找到的占用CPU高的线程TID转换成16进制,用对应的16进制数值在3步骤中生成的javacore文件中查找对应的线程堆栈(native ID为该16进制值)

分析实例:
1、topas查看占用CPU最高的进程PID:
2、ps -mp 528494 -o THREAD
显示内容如下:
web2:/app1/opentfs2$ ps -mp 528494 -o THREAD
    USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT BND COMMAND
opentfs2 528494 627044        - A  390  60 142        *   242001      -   - /usr/java5/bin/java -Xms1024m -Xmx2048m -da -Dplatform
       -      -      -   507987 S    0  82  1 f100070f10007c40  8410404      -   - -
       -      -      -   688141 S    0  82  1 f100070f1000a840  8410404      -   - -
       -      -      -   974999 S    0  82  1 f100060026c018c8   400404      -   - -
       -      -      -  1102075 R   98 176  0        -   400000      -   - -
       -      -      -  1167493 S    0  82  1 f100070f10011d40  8410404      -   - -
       -      -      -  1200235 S    0  82  1 f100070f10012540  8410404      -   - -
......
3、kill -3 528494  手动在domain的目录下生成 528494 进程的 Thread Dump(javacore文件):javacore.20130819.150717.528494.0002.txt
4、根据步骤2中TID "1102075" 在 CP 列中有一个高值(它达到“98”,而其它 TID 几乎为 0),将1102075转换成16进制为:10D0FB,在javacore.20130819.150717.528494.0002.txt中查找10D0FB对应的线程堆栈信息:
"[STUCK] ExecuteThread: '94' for queue: 'weblogic.kernel.Default (self-tuning)'" (TID:0x37187A00, sys_thread_t:0x3713F324, state:CW, native ID:0x0010D0FB) prio=1
at java/util/zip/Deflater.deflateBytes(Native Method)
at java/util/zip/Deflater.deflate(Deflater.java:332(Compiled Code))
at java/util/zip/DeflaterOutputStream.deflate(DeflaterOutputStream.java(Compiled Code))
at java/util/zip/DeflaterOutputStream.write(DeflaterOutputStream.java:138(Compiled Code))
at java/util/zip/GZIPOutputStream.write(GZIPOutputStream.java:95(Compiled Code))
at com/linkage/webframework/util/compress/CompressStream.write(CompressStream.java:41(Compiled Code))
at org/apache/tapestry/request/ResponseOutputStream.innerWrite(ResponseOutputStream.java:246(Compiled Code))
at org/apache/tapestry/request/ResponseOutputStream.write(ResponseOutputStream.java:271(Compiled Code))
at sun/nio/cs/StreamEncoder$ConverterSE.implWrite(StreamEncoder.java:276(Compiled Code))
at sun/nio/cs/StreamEncoder.write(StreamEncoder.java:186(Compiled Code))
at java/io/OutputStreamWriter.write(OutputStreamWriter.java:214(Compiled Code))
at java/io/BufferedWriter.write(BufferedWriter.java:191(Compiled Code))
at java/io/PrintWriter.write(PrintWriter.java:375(Compiled Code))
at org/apache/tapestry/AbstractMarkupWriter.printRaw(AbstractMarkupWriter.java:749(Compiled Code))
at org/apache/tapestry/html/NestedHTMLWriter.close(NestedHTMLWriter.java:61(Compiled Code))
at org/apache/tapestry/html/Body.renderComponent(Body.java:407(Compiled Code))
at org/apache/tapestry/AbstractComponent.render(AbstractComponent.java:859(Compiled Code))
at org/apache/tapestry/BaseComponent.renderComponent(BaseComponent.java:118(Compiled Code))
at org/apache/tapestry/AbstractComponent.render(AbstractComponent.java:859(Compiled Code))
at org/apache/tapestry/AbstractPage.renderPage(AbstractPage.java:300(Compiled Code))
at org/apache/tapestry/engine/RequestCycle.renderPage(RequestCycle.java:368(Compiled Code))
at org/apache/tapestry/engine/AbstractEngine.renderResponse(AbstractEngine.java:749(Compiled Code))
at org/apache/tapestry/engine/PageService.service(PageService.java:77(Compiled Code))
at org/apache/tapestry/engine/AbstractEngine.service(AbstractEngine.java:889(Compiled Code))
at org/apache/tapestry/ApplicationServlet.doService(ApplicationServlet.java:200(Compiled Code))
at org/apache/tapestry/ApplicationServlet.doGet(ApplicationServlet.java:161(Compiled Code))
at javax/servlet/http/HttpServlet.service(HttpServlet.java:743(Compiled Code))
at javax/servlet/http/HttpServlet.service(HttpServlet.java:856(Compiled Code))
at weblogic/servlet/internal/StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227(Compiled Code))
at weblogic/servlet/internal/StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125(Compiled Code))
at weblogic/servlet/internal/ServletStubImpl.execute(ServletStubImpl.java:283(Compiled Code))
at weblogic/servlet/internal/TailFilter.doFilter(TailFilter.java:26(Compiled Code))
at weblogic/servlet/internal/FilterChainImpl.doFilter(FilterChainImpl.java:42(Compiled Code))
at com/linkage/component/AppCompress.doFilter(AppCompress.java:95(Compiled Code))
at weblogic/servlet/internal/FilterChainImpl.doFilter(FilterChainImpl.java:42(Compiled Code))
at weblogic/servlet/internal/WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3242(Compiled Code))
at weblogic/security/acl/internal/AuthenticatedSubject.doAs(AuthenticatedSubject.java:321(Compiled Code))
at weblogic/security/service/SecurityManager.runAs(SecurityManager.java:121(Compiled Code))
at weblogic/servlet/internal/WebAppServletContext.securedExecute(WebAppServletContext.java:1950(Compiled Code))
at weblogic/servlet/internal/WebAppServletContext.execute(WebAppServletContext.java:1916(Compiled Code))
at weblogic/servlet/internal/ServletRequestImpl.run(ServletRequestImpl.java:1371(Compiled Code))
at weblogic/work/ExecuteThread.execute(ExecuteThread.java:209(Compiled Code))
at weblogic/work/ExecuteThread.run(ExecuteThread.java:181)
根据该堆栈,即可定位问题所在。

AIX5.3CPU占用高的问题核查的更多相关文章

  1. SQLSERVER排查CPU占用高的情况

    SQLSERVER排查CPU占用高的情况 今天中午,有朋友叫我帮他看一下数据库,操作系统是Windows2008R2 ,数据库是SQL2008R2 64位 64G内存,16核CPU 硬件配置还是比较高 ...

  2. 找出linux服务器IO占用高的程序

     一台服务器比较性能无外乎内存.cpu使用率.IO使用率,把这3样优化好了,你服务器的负载就要小很多,当然网络情况不在我的考虑范围,毕竟网络这个情况是很不稳定,就算你服务器上把网络优化得再好,idc不 ...

  3. 检查.net代码中占用高内存函数(翻译)

    哈哈,昨天没事做,在CodeProject瞎逛,偶然看到这篇文章,居然读得懂,于是就翻译了一下,当练习英语,同时增强对文章的理解,发现再次翻译对于文章的一些细节问题又有更好的理解.下面是翻译内容,虽然 ...

  4. 解决Antimalware Service Executable CPU占用高听语音

    windows8/8.1,WIN10自带的安全软件Windows defender还不错,基本可以不用装其他杀毒软件了. 但是其进程Antimalware Service Executable 出现C ...

  5. linux Java项目CPU内存占用高故障排查

    linux Java项目CPU内存占用高故障排查 top -Hp 进程号 显示进程中每个线程信息,配合jstack定位java线程运行情况 # 线程详情 jstack 线程PID # 查看堆内存中的对 ...

  6. JAVA服务cpu占用高排查

    最近线上机器偶尔有台cpu达到100%,还居高不下.同样负载的其他机器却正常,我想肯定是代码哪里有问题了 首先我们top看下 可定位到对应占用高的PID 然后=>ps -mp PID -o TH ...

  7. Linux查看CPU、内存、IO占用高的进程

    查看CPU占用高的top15进程 | | 查看内存占用高的top15进程 | | 查看IO占用高的top15进程 ./ind_high_io_process.py 3 4 5.其中3表示间隔3秒获取一 ...

  8. (转)解决Win7/8硬盘占用高方案汇总

      写在前面       在Windows7时代,很少人会抱怨硬盘占用率高的问题.但是到了Windows7/8.1时,硬盘占用率成为一个扰人的问题.硬盘占用率经常100%会导致系统卡.慢,而且也很伤硬 ...

  9. C# Winform程序CPU占用高的原因和解决方法

    程序CPU占用高的可能原因: 1.存在死循环: 为什么死循环会导致CPU占用高呢?      虽然分时操作系统是采用时间片的机制对CPU的时间进行管理的,也就是说到了一定时间它会自动从一个进程切换到下 ...

随机推荐

  1. linux使用mysql的命令

    1.连接到mysql服务器的命令 mysql -h 服务器主机地址 -u 用户名 -p 用户密码 例:mysql -h 192.168.1.1 -u root -p   //指定服务器的主机地址和用户 ...

  2. pyqt treeview基础学习

    # -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.QtGui import  * from Py ...

  3. 判断一个int 型整数 是否为回文数

    leetcode 上的题目 Determine whether an integer is a palindrome. Do this without extra space. 由于不能使用额外空间, ...

  4. JAVA设计模式-工厂模式(代码示例)

    结构 MySort.java 实际业务中我们可能会使用任意一种排序方法 package pers.zander.edu.arithmetic.sort; /** * 排序接口 * @author * ...

  5. Oracle 更改用户名

    直接更改系统user$表中的用户名. 查询要更改的用户名 SQL> select user#,name,password from user$ where name ='TICKETS'; US ...

  6. [Python笔记][第四章Python正则表达式]

    2016/1/28学习内容 第四章 Python字符串与正则表达式之正则表达式 正则表达式是字符串处理的有力工具和技术,正则表达式使用预定义的特定模式去匹配一类具有共同特征的字符串,主要用于字符串处理 ...

  7. SqlServer存储过程传入Table参数

    今天是周日,刚好有空闲时间整理一下这些天工作业务中遇到的问题. 有时候我们有这样一个需求,就是在后台中传过来一个IList<类>的泛型集合数据,该集合是某个类的实例集合体,然后将该集合中的 ...

  8. BaceModel

    https://github.com/nicklockwood/BaseModel 字典封装成model 自动封装 要求属性的名字与字典一样 不能有对象 如果其中有需要自己封装的对象属性 重写setW ...

  9. JS闭包(一)

    闭包是指有权访问另一个函数作用域中的变量的函数. 创建闭包的常见方法:在一个函数内部创建另一个函数. 对彻底理解闭包,需要知道如何创建作用域链以及作用域链有什么作用的细节. 闭包的功能: 保存函数执行 ...

  10. react基于webpack和babel以及es6的项目搭建

    项目demo地址https://github.com/aushion/webpack_reac_config 1.打开命令提示窗口,输入 mkdir react_test cd react_test ...