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. [置顶] Android学习系列-把文件保存到SD卡上面(6)

    Android学习系列-把文件保存到SD卡上面(5) 一般多媒体文件,大文件需要保存到SD卡中.关键点如下: 1,SD卡保存目录:mnt/sdcard,一般采用Environment.getExter ...

  2. java二维码开发

    之前就写过很多关于二维码的东西,一直没有时间整理一下,所以呢今天就先来介绍一下如何利用java开发二维码.生成二维码有很多jar包可以实现,例如Zxing,QRcode,前者是谷歌的,后者日本的,这里 ...

  3. Udacity调试课笔记之断言异常

    Udacity调试课笔记之断言异常 这一单元的内容不是很多,如Zeller教授所说,就是如何写.检查断言,并如何使用工具实现自动推导出断言的条件. 现在,多数的编程语言,尤其是高级编程语言都会有内置的 ...

  4. BOOST中如何实现线程安全代码

    1 需要include <boost/thread.hpp> 2 背景知识请参考<boost程序库完全开发指南>第12章 3 编绎:g++ -o mthread mthread ...

  5. 设置 git config 的一些默认配置

    设置 git status的颜色. git config --global color.status auto 一.Git已经在你的系统中了,你会做一些事情来客户化你的Git环境.你只需要做这些设置一 ...

  6. iOS archive(归档)的总结

    http://www.cnblogs.com/ios8/p/ios-archive.html

  7. linux 系统下java开发环境的配置

    在安装之前,确保你的linux系统下有 jdk,jboss等相关软件 一.配置JDK环境变量 步骤: 解压缩JDK文件: unzip jdk1.6.0_31.zip 目录下显示文件夹jdk1.6.0_ ...

  8. slave延迟原因及优化方法

    转载叶总:http://imysql.com/2015/04/12/mysql-optimization-case-howto-resolve-slave-delay.shtml 一般而言,slave ...

  9. Hadoop2.4.1入门实例:MaxTemperature

    注意:以下内容在2.x版本与1.x版本同样适用,已在2.4.1与1.2.0进行测试. 一.前期准备 1.创建伪分布Hadoop环境,请参考官方文档.或者http://blog.csdn.net/jed ...

  10. PyQuery基本操作介绍

    PyQuery基本操作介绍 PyQuery为Python提供一个类似于jQuery对HTML的操作方式,可以使用jQuery的语法对html文档进行查询操作. 本文以百度首页为例来介绍PyQuery的 ...