`
zl198751
  • 浏览: 278510 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ice问题死循环问题解决

 
阅读更多

 

查看进程的线程资源使用情况:15047为进程PID

ps -Lp 15047  cu

top -H -p 15047

1. 首先排查哪些进程cpu占用率高。 通过命令 ps ux

[]
$ps ux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
admin 1502 0.0 0.0 51172 1032 ? S 11:04 0:00 sshd: admin@pts/1
admin 1503 0.0 0.0 68136 1512 pts/1 Ss 11:04 0:00 -bash
admin 1555 0.0 0.0 96640 3356 pts/1 S+ 11:04 0:00 vim jstack15047.12.2
admin 1993 0.0 0.0 51172 1032 ? S 11:06 0:00 sshd: admin@pts/2
admin 1994 0.0 0.0 68136 1492 pts/2 Ss 11:06 0:00 -bash
admin 2038 0.0 0.0 65576 912 pts/2 R+ 11:06 0:00 ps ux
admin 10191 0.2 0.4 670904 23880 ? Sl 09:31 0:13 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
admin 10756 0.2 0.4 670476 23092 ? Sl 09:32 0:12 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
admin 14467 0.2 0.4 671700 24436 ? Sl 09:47 0:10 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
admin 15037 0.0 0.0 65908 1168 ? S Nov30 0:00 /bin/sh /usr/alibaba/jboss/bin/run.sh -Djboss.server.home.dir=/home/admin/run/deploy/../.myjboss -Djboss.server.home.url=file:/home/admi
admin 15047 25.4 42.9 2915448 2252040 ? Sl Nov30 312:31 /usr/alibaba/java/bin/java -Dprogram.name=run.sh -server -Xmx2g -Xms2g -Xmn256m -XX:PermSize=196m -Xss256k -XX:+DisableExplicitGC -XX:+U
admin 15834 0.0 0.0 3840 472 ? S Nov30 0:00 /usr/alibaba/cronolog/sbin/cronolog /home/admin/out/logs/443-error_log.%w
admin 15835 0.0 0.0 3840 480 ? S Nov30 0:00 /usr/alibaba/cronolog/sbin/cronolog /home/admin/out/logs/cookie_logs/%w/cookie_log
admin 15836 0.0 0.0 58900 612 ? S Nov30 0:00 /usr/bin/logger -p local2.info
admin 15837 0.0 0.0 3840 476 ? S Nov30 0:07 /usr/alibaba/cronolog/sbin/cronolog /home/admin/out/logs/jk_logs/%w/mod_jk.log
admin 16316 0.2 0.4 669448 21740 ? Sl 09:53 0:10 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
admin 27702 0.0 0.0 51320 1060 ? S 10:39 0:00 sshd: admin@pts/0
admin 27703 0.0 0.0 68136 1524 pts/0 Ss+ 10:39 0:00 -bash

2.  查看对应java进程的每个线程的CPU占用率。通过命令:ps -Lp 15047  cu

[admin@us-escrow-web4.hst.scl.en.alidc.net ~]
$ps -Lp 15047  cu
USER       PID   LWP %CPU NLWP %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
。。。。。。
admin    15047 25491 70.8  285 42.9 2915448 2252032 ?     Rl   10:29  22:35 java
admin    15047 25495 71.0  285 42.9 2915448 2252032 ?     Rl   10:29  22:34 java
admin    15047 25499  0.0  285 42.9 2915448 2252032 ?     Sl   10:29   0:00 java
admin    15047 25500  0.0  285 42.9 2915448 2252032 ?     Sl   10:29   0:00 java
admin    15047 25517  0.0  285 42.9 2915448 2252032 ?     Sl   10:30   0:00 java
admin    15047 25521  0.0  285 42.9 2915448 2252032 ?     Sl   10:30   0:00 java
admin    15047 25540 72.4  285 42.9 2915448 2252032 ?     Rl   10:30  22:31 java
admin    15047 25541  0.0  285 42.9 2915448 2252032 ?     Sl   10:30   0:00 java
admin    15047 25542  0.0  285 42.9 2915448 2252032 ?     Sl   10:30   0:00 java
admin    15047 25741 70.7  285 42.9 2915448 2252032 ?     Rl   10:31  21:33 java
admin    15047 25766  0.0  285 42.9 2915448 2252032 ?     Sl   10:31   0:00 java
admin    15047 26022  0.0  285 42.9 2915448 2252032 ?     Sl   10:31   0:00 java
admin    15047 26032 69.6  285 42.9 2915448 2252032 ?     Rl   10:32  20:38 java

3.  追踪线程内部,查看load过高原因。通过命令:jstack 15047。

以线程25495为例,现将25495转换成16进制6397。 再通过多次监控jstack日志,排查线程25495的运行轨迹。

"ActiveMQ Session Task" prio=10 tid=0x000000004a598000 nid=0x6397 runnable [0x0000000044948000]
   java.lang.Thread.State: RUNNABLE
         at Ice.ConnectionI.sendRequest(ConnectionI.java:519)
         - locked <0x00002aaac2877ff8> (a Ice.ConnectionI)
         at IceInternal.Outgoing.invoke(Outgoing.java:72)
         at AliIMInterface._WWMessageInterfaceDelM.SendNotifyMessage(_WWMessageInterfaceDelM.java:36)
         at AliIMInterface.WWMessageInterfacePrxHelper.SendNotifyMessage(WWMessageInterfacePrxHelper.java:40)
         at AliIMInterface.WWMessageInterfacePrxHelper.SendNotifyMessage(WWMessageInterfacePrxHelper.java:18)

"ActiveMQ Session Task" prio=10 tid=0x000000004a598000 nid=0x6397 runnable [0x0000000044948000]
   java.lang.Thread.State: RUNNABLE
         at IceInternal.Outgoing.invoke(Outgoing.java:72)
         at AliIMInterface._WWMessageInterfaceDelM.SendNotifyMessage(_WWMessageInterfaceDelM.java:36)
         at AliIMInterface.WWMessageInterfacePrxHelper.SendNotifyMessage(WWMessageInterfacePrxHelper.java:40)
         at AliIMInterface.WWMessageInterfacePrxHelper.SendNotifyMessage(WWMessageInterfacePrxHelper.java:18)

"ActiveMQ Session Task" prio=10 tid=0x000000004a598000 nid=0x6397 runnable [0x0000000044947000]
   java.lang.Thread.State: RUNNABLE
         at java.lang.Throwable.fillInStackTrace(Native Method)
         - locked <0x00002aaab53435e8> (a IceInternal.LocalExceptionWrapper)
         at java.lang.Throwable.<init>(Throwable.java:181)
         at java.lang.Exception.<init>(Exception.java:29)
         at IceInternal.LocalExceptionWrapper.<init>(LocalExceptionWrapper.java:16)
         at Ice.ConnectionI.sendRequest(ConnectionI.java:530)
         - locked <0x00002aaac2877ff8> (a Ice.ConnectionI)
         at IceInternal.Outgoing.invoke(Outgoing.java:72)

4. 通过jstack查看代码运行轨迹,结合已有源码,一般可以分析出死循环的地方。
分享到:
评论

相关推荐

    Flink和Iceberg如何解决数据入湖相关问题分析

    Apache Flink 和 Apache Iceberg 是两个在大数据领域中解决这些问题的重要工具。本文将深入探讨这两个技术如何解决数据入湖所面临的核心挑战。 **数据入湖的核心挑战** 1. **数据传输中断与一致性**:程序错误或...

    zeroc ice教程 ice环境配置 Ice中文教程 C++ ICE java ICE ICE入门 ice基础教程 ice开发文档

    Zeroc ICE是一个开源的中间件平台,它支持C++、Java、Python、.NET等语言的分布式对象通信。ICE全称Internet Communications Engine,即互联网通信引擎,是一种用于开发分布式计算应用的强大工具。本文档主要围绕ICE...

    ice教程和ice中文版手册

    此外,它还可能包含特定的解决常见问题的章节,以帮助开发者在遇到困难时快速找到解决方案。 在本资料包中,"ICE"可能是ICE教程和手册的合集,可能包括了各种格式的文件,如PDF文档、源代码示例、甚至是视频教程。...

    Ice-3.3.1 ICE

    ZeroC公司提供了丰富的文档、教程和论坛,以帮助开发者解决在使用Ice过程中遇到的问题。 ### 冰山一角:Ice概述 #### 2.1 章节概览 第二章提供了Ice框架的全面概述,涵盖了其架构、服务、架构模式和设计原则。这...

    ice.rar_ice matlab_ice.m matlab_matlab ice_matlab ice_matlab i

    ice.m中可能包含这些辅助函数,确保增强过程不会引入新的问题。 5. **可视化与评估**:源码可能还包含了显示处理前后图像的代码,以便于用户直观比较效果。同时,可能会有评估函数来量化对比度增强的效果,如计算...

    ice安装包 for windows.zip

    《ICE for Windows安装包详解及应用》 ICE(Integration and Communication Engine)是一种高性能、轻量级的中间件...通过深入学习和实践,开发者可以充分利用ICE的强大功能,解决复杂的应用场景中的通信和集成问题。

    Linux下安装ICE包

    在Linux操作系统中,安装ICE(Integration and Communication Environment)包是一个重要的任务,特别是在开发分布式系统或者进行跨平台通信时。ICE是一种高性能、灵活且易于使用的中间件,它允许应用程序通过网络...

    ICE入门 文章集

    马维达可能会分享一些使用ICE解决复杂问题的实战经验,展示其在应对挑战性任务时的出色表现。 总的来说,这些文章涵盖了ICE的各个方面,从基础到高级,从理论到实践,为初学者提供了全面的学习资源,同时也为有经验...

    ICE 学报 第五期

    FAQ角汇集了关于Ice框架常见问题的回答,旨在解答开发者在使用过程中遇到的各种疑问。 1. **问题分类** - **基础设置**:涉及安装、配置等方面的问题。 - **开发技巧**:分享提高开发效率的小技巧和经验。 - **...

    ICE 学报 第三期

    最后一部分是常见问题解答,这里提供了一些关于Ice和IceStorm的常见问题及其解答。 **主要内容概述:** 这部分汇总了来自社区的一系列问题,包括但不限于Ice和IceStorm的安装配置、基本用法、故障排查等方面。 **...

    Ice-3.7.4.msi for windows版

    然而想要解决这样的错误,一般只需要把在无法编译成.o文件的.cpp文件中和ice文件相关的头文件放在该.cpp文件的起始行即可。也就是说,根据提示,把.cpp文件中最早提示导致出错的.h文件放在起始行。 ICE的常见...

    ICE框架 C++示例程序

    ICE(Internet Communication Engine)框架是一种跨平台的中间件,它提供了分布式系统开发所需的各种服务,如对象间通信、数据序列化、远程调用等。在C++编程环境中,ICE为开发者提供了一套强大的工具和库,使得构建...

    ICE中间件技术详细教程_ICE_中间件_

    5. **调试工具**: 提供了强大的调试工具,帮助开发者定位和解决问题。 6. **性能优化**: 通过高效的网络协议和数据编码,ICE在性能上表现出色。 **ICE开发基础** 学习ICE中间件,首先要理解其基本架构和组件,...

    zeroc ICE 3.3.1文档

    ### 分布式编程与ICE 3.3.1:关键知识点概述 #### 一、ICE 3.3.1 概览 - **版本信息**:文档为ICE 3.3.1版本,...通过对该版本的深入了解,可以帮助开发者更好地利用ICE的强大功能,解决实际项目中的复杂通信问题。

    android连接ICE服务

    在Android开发中,ICE(Internet Communication Engine)服务是一种用于设备间通信的技术,它允许设备通过互联网进行实时数据交换。ICE服务通常被用在分布式系统、物联网(IoT)项目或者需要远程控制和监控的应用场景...

    Ice 经典入门和实例

    阅读这些资料,你可以从基础到高级全面了解Ice的各个方面,包括API使用、最佳实践和常见问题解决方案。 总的来说,"Ice经典入门和实例"是一套完整的学习资料,涵盖了Ice的基本概念、核心功能、高级特性和实战应用,...

    ICE 的聊天demo 含有ICE的配置文档

    4. **ICEChat.sln**:这是一个Visual Studio解决方案文件,包含了整个项目的组织结构和依赖关系。开发者可以通过打开这个文件在VS2013中加载和管理项目。 5. **ICEChatClient**:这个可能是客户端应用程序的源代码...

    Ice-3.4.2安装包

    Ice-3.4.2安装包是Zeroc公司提供的最新版本的Ice中间件,它是一种高性能、跨平台的通信框架,专为构建分布式应用程序而设计。Ice支持多种编程语言,包括C++、Java、Python、C#等,使得开发者可以方便地在不同语言...

    ice源码(Ice-3.4.1.tar.gz)

    ICE提供了一种中间件解决方案,支持C++、Java、Python等多种语言,并且通过其“ Slice”接口定义语言,实现跨语言的序列化和通信。ICE 3.4.1是其稳定的一个版本,包含了大量的优化和改进,为开发者提供了更高效、...

    ICE系列培训教程

    ICE(Integration and Connectivity Environment)框架是一种面向服务架构(SOA,Service-Oriented Architecture)的解决方案,主要用于构建可扩展、高性能、高可用性的分布式系统。本教程将深入讲解ICE框架的核心...

Global site tag (gtag.js) - Google Analytics