1、问题现象
服务器环境是AIX6.1\WAS7.0,通过topas监控CPU经常出现100%的情况,而且负荷比较轻时,CPU占用率不能也下降。
2、处理步骤
1、通过topas监控可以看到当前占用CPU高的两个java进程,记录下进程号:6619258;
2、通过ps -mp 6619258 -o THREAD 以查找当前进程正在占用 CPU 的线程信息,把输出信息拷贝到文本文件中;
3、通过kill -3 6619258 输出ThreadDump线程执行堆栈快照信息,在当前目录中找到类似javacore.20120322.130602.6619258.0003.txt文件,拷贝到本地;
4、下面分析这两个文件,分析tid线程信息发现有下面标红的几个线程占用CPU比较高:
USER PID PPID TID ST CP PRI SC WCHAN F TT BND COMMAND
root 6619258 1 - A 314 60 108 * 242001 - -1 /was/IBM/WebSphere/AppServer/java/bin/java -
- - - 10616851 S 0 82 1 f1000f0a1000a240 8410400 - -1 -
- - - 11141271 S 0 82 1 f1000f0a1000aa40 8410404 - -1 -
- - - 20971659 S 0 82 1 f1000f0a10014040 8410404 - -1 -
- - - 21168201 R 55 118 0 - 400000 - -1 -
- - - 21299399 S 0 82 1 f1000f0a10014540 8410400 - -1 -
- - - 22544397 S 0 82 1 f1000f0a10015840 8410400 - -1 -
- - - 29294701 S 0 82 1 f1000f0a1001bf40 8410400 - -1 -
- - - 29819073 S 0 82 1 f1000f0a1001c740 8410400 - -1 -
- - - 29884629 R 72 130 0 - 400000 - -1 -
- - - 30212313 S 0 82 1 f1000f0a1001cd40 8410400 - -1 -
- - - 30277691 S 0 82 1 f1000f0a1001ce40 8410400 - -1 -
- - - 34013245 S 0 82 1 f1000f0a10020740 8410404 - -1 -
- - - 34078781 S 0 82 1 f1000f0a10020840 8410400 - -1 -
- - - 34209851 R 69 128 0 - 400000 - -1 -
- - - 34406643 S 1 82 1 f1000f0a10020d40 8410400 - -1 -
- - - 34537533 S 0 82 1 - 418400 - -1 -
5、取这些线程号,转换为16进制的数据,21168201 转换16进制值为0x1430049,可以使用windows的“计算器”工具,先输入10进制数值,然后切换到16进制。
取0x1430049在javacore.20120322.130602.6619258.0003.txt中找到下面一段日志:
3XMTHREADINFO "WebContainer : 3" TID:0x00000000E188B100, j9thread_t:0x000000011A5F0D20, state:CW, prio=5
3XMTHREADINFO1 (native thread ID:0x1430049, native priority:0x5, native policy:UNKNOWN)
4XESTACKTRACE at org/apache/regexp/RECompiler.setNextOfEnd(RECompiler.java:209(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.expr(RECompiler.java:1193(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.terminal(RECompiler.java:866(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.closure(RECompiler.java:942(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.branch(RECompiler.java:1151(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.expr(RECompiler.java:1203(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.compile(RECompiler.java:1281(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RE.<init>(RE.java:495(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RE.<init>(RE.java:480(Compiled Code))
4XESTACKTRACE at com/sbdcpn/utils/Stringvalidator.getRegularObj(Stringvalidator.java:173(Compiled Code))
4XESTACKTRACE at com/sbdcpn/utils/Stringvalidator.validValue(Stringvalidator.java:150(Compiled Code))
4XESTACKTRACE at com/sbdcpn/utils/tools/StringFormat.StringFormatToDate(StringFormat.java:40(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/utils/PageUtilMethod.getDataValue(Unknown Source:279(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/taglib/IteratorResultTag.convertFormat(IteratorResultTag.java:697(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/taglib/IteratorResultTag.formatResult(IteratorResultTag.java:671(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/taglib/IteratorResultTag.doAfterBody(IteratorResultTag.java:372(Compiled Code))
4XESTACKTRACE at com/ibm/_jsp/_grid_5F_plan_5F_query._jspService(_grid_5F_plan_5F_query.java:1889(Compiled Code))
29884629 转换为16进制值为0x1C800D5,查找日志为:
3XMTHREADINFO "WebContainer : 8" TID:0x00000000E22E7600, j9thread_t:0x000000011FBE1500, state:CW, prio=5
3XMTHREADINFO1 (native thread ID:0x1C800D5, native priority:0x5, native policy:UNKNOWN)
4XESTACKTRACE at org/apache/regexp/RECompiler.setNextOfEnd(RECompiler.java:207(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.expr(RECompiler.java:1194(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.terminal(RECompiler.java:866(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.closure(RECompiler.java:942(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.branch(RECompiler.java:1151(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.expr(RECompiler.java:1203(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RECompiler.compile(RECompiler.java:1281(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RE.<init>(RE.java:495(Compiled Code))
4XESTACKTRACE at org/apache/regexp/RE.<init>(RE.java:480(Compiled Code))
4XESTACKTRACE at com/sbdcpn/utils/Stringvalidator.getRegularObj(Stringvalidator.java:173(Compiled Code))
4XESTACKTRACE at com/sbdcpn/utils/Stringvalidator.validValue(Stringvalidator.java:150(Compiled Code))
4XESTACKTRACE at com/sbdcpn/utils/tools/StringFormat.StringFormatToDate(StringFormat.java:40(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/utils/PageUtilMethod.getDataValue(Unknown Source:279(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/taglib/IteratorResultTag.convertFormat(IteratorResultTag.java:697(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/taglib/IteratorResultTag.formatResult(IteratorResultTag.java:671(Compiled Code))
4XESTACKTRACE at com/sbdcpn/page/taglib/IteratorResultTag.doStartTag(IteratorResultTag.java:289)
4XESTACKTRACE at com/ibm/_jsp/_grid_5F_plan_5F_query._jspService(_grid_5F_plan_5F_query.java:1499)
跟踪其它几个占用CPU高的几个线程,发现都是这段代码有问题。
6、优化程序后,不使用org/apache/regexp/RECompiler包,而采用java自带的
Pattern p = Pattern.compile(regex);
ret = p.matcher(value).lookingAt();
问题排除。
分享到:
相关推荐
1. **AIX 6.1**:AIX 是 IBM 开发的一种基于 Unix 的操作系统,广泛应用于 IBM 的 Power 系列服务器上。AIX 6.1 是 AIX 6 的一个版本,提供了增强的安全性、可靠性和性能。 2. **ISO 文件**:ISO 文件是一种存储在...
IBM aix6.1系统镜像百度网盘下载地址,内有本人QQ,失效可以联系我
AIX 6.1 安装中文字符集是指在 AIX 6.1 操作系统中安装中文字符集的过程,我们可以通过查看操作系统当前字符集、查看操作系统已安装字符集、安装新字符集等步骤来完成安装过程。安装完成后,我们可以检查系统字符集...
在AIX6.1操作系统上安装Oracle 11gR2是一项复杂但重要的任务,因为Oracle 11gR2引入了许多创新特性,极大地提升了数据库的性能和可用性。Oracle Grid Infrastructure的集成是其中的一大亮点,它将自动存储管理(ASM)...
安装bash-4.2-1.aix6.1.ppc包的过程通常包括以下几个步骤: 1. **获取软件包**:首先,你需要从官方源或第三方库下载适合AIX 6.1的bash包。在这个案例中,文件名可能是"AIX6.1 bash 包及安装",这可能是一个.arj或....
### IBM AIX 6.1 环境下 Java JRE、SDK ...通过上述步骤,我们不仅能够成功地在 IBM AIX 6.1 系统上安装和卸载 Java JRE 及 SDK,还能正确配置好相关的环境变量,从而为后续的 Java 应用程序开发和运行打下坚实的基础。
- **逻辑分区**:AIX 6.1支持逻辑分区技术,允许在同一物理服务器上运行多个独立的操作系统实例。 - **资源管理**:提供了灵活的资源分配和管理机制,可以根据应用需求动态调整资源。 #### 2. **文件系统** - **JFS...
在IT领域,AIX(Advanced Interactive Executive)是IBM开发的一款基于UNIX的操作系统,主要应用于IBM Power Systems服务器上。AIX 6.1作为该系列的一个重要版本,提供了强大的功能和性能,尤其在企业级应用、高可用...
参考自己实际安装步骤,介绍了AIX系统下WAS6.1及补丁包的安装及概要文件的创建
AIX6.1如何安装DB2AIX6.1如何安装DB2AIX6.1如何安装DB2AIX6.1如何安装DB2
AIX6.1(6100-03)中文语言bff安装文件包,从操作系统安装光盘上挑出,并安装验证,包含简体中文的IBM-eucCN(zh_CN)和UTF-8(ZH_CN)两种编码格式。下载安装包,上传服务器,解tar后,运行一下命令安装,安装后locale -...
综上所述,AIX 6.1命令参考大全是一个全面的指南,涵盖从基本文件操作到高级系统管理的各个层面。熟悉这些命令不仅能够提高工作效率,还能确保AIX系统的稳定运行和高效管理。对于IT专业人员来说,掌握AIX 6.1的...
标题中的"rpms_gcc4.8.2_aix6.1.zip"是一个包含了GCC 4.8.2安装包及其依赖的压缩文件,适用于AIX 6.1操作系统。这个压缩包的目的是简化在AIX 6.1系统上安装GCC 4.8.2的过程,确保所有必要的依赖组件都已包含其中,以...
AIX6.1系统安装(串口)配置手册v1.0 AIX6.1系统安装(串口)配置手册v1.0是IBM开发的 Unix 操作系统AIX的安装和配置指南。下面是该手册中提到的重要知识点: 一、AIX安装方式简介 AIX系统可以通过不同的方式安装,...
python-2.5.2-1.aix6.1.ppc.rpm python 2.5.2 for AIX 6.1 PowerPC PPC RPM
### AIX 6.1 环境下 WAS 7.0 安装与配置步骤详解 #### 一、AIX 6.1 操作系统的安装及必要的软件包配置 在进行 WebSphere Application Server (WAS) 7.0 的安装前,必须首先确保 AIX 6.1 操作系统及其相关软件包...
8. **系统转换**:在安装过程中,AIX 6.1会自动处理大部分系统转换工作,包括库、配置文件和系统服务的更新。 9. **验证与恢复**:升级完成后,验证新系统的功能和性能,确保所有服务正常运行。如有必要,从备份中...
综上所述,AIX 6.1系统在性能管理方面提供了丰富的工具和技术,涵盖从基本概念到具体实践的各个环节。通过对这些知识点的学习和掌握,可以有效地提高系统的性能表现,确保其在高负载环境下也能保持稳定高效。
IBM AIX 6.1操作系统安装指南是一份详尽...通过这份"IBM AIX6.1操作系统安装指导.pdf"文档,读者可以获取更深入的步骤指导和技巧,从而成功部署AIX 6.1操作系统。建议在实际操作中结合文档逐步实践,以加深理解和掌握。
本压缩包中包含libcurl的安装文件及openssl的安装文件并且附带编译步骤,可直接再aix6.1系统中编译出64bit licurl.a引用该动态库即可实现c语言在aix系统编写http及https应用程序,本人亲自测试通过,欢迎下载