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

Analyze Slow and Blocked Processes(jstack)

阅读更多

 

Symptoms

The CRX/CQ process uses 100% of the CPU, the system doesn't respond, or the system is very slow.

Cause

Such problems can have many causes.

Analysis, Resolution

CRX 2.x

A simple CPU profiling tool is included in CRX 2.0.x. To start it, open:

http://localhost:7402/crx/diagnostic/prof.jsp

CRX 1.x

To help analyzing the problem, create a few full thread dumps. Those thread dumps can then be analyzed (for example using samurai.jar).

Creating Full Thread Dumps

Get the Process ID

To get the process id of your Java process, use

jps -l

 

If this doesn't work (path not set, JDK not installed, or older Java version), use

ps -el | grep java

 

Full Thread Dumps

To analyze a performance problem or a blocked process, create about 10 full thread dumps with about 1 second delay. If the problem may be related to clustering, please create at least 10 full thread dumps on each cluster node. If possible, the thread dumps should be created at roughly the same time (it doesn't need to be exact).

If installed, use jstack. This will print the thread dumps to system out:

jstack <pid>

 

This will append a full thread dump to a file:

jstack <pid> >> threadDumpNode1.txt

 

 

If this doesn't work, use kill -QUIT. This will print the thread dumps to the log file:

kill -QUIT <pid>

 

NOTE: If the steps above steps for obtaining thread dumps do not work in your environment then please see this article.

 

Check CPU Usage

To analyze the problem, it is important to know if CRX /CQ is running in a endless loop, or if it's merely sleeping. To find it out, type

top

 

This will get you the list of processes, sorted by CPU usage. If the top process is a 'java' process, and if the PID matches CRX/CQ, then the process is running full speed.

If you are unsure how to interpret the results, run the following statement and then include the filetop.txt in your problem report:

top -l5 -s5 > top.txt

Check Session Count

In many many cases the problem is the number of open sessions it too large. At some point, this slows down processing. To find out if this is the case, run

jps -l (to get the process id of the Java process)
jmap -histo <pid> | grep CRXSession (to get the number of open session)

If this is in fact the problem (the number is higher than a few hundred sessions) then this needs to be analyzed. Possibly a session pool is used (depending on the version of CRX / CQ there might be a hotfix for the given problem), or an internal (possibly application level) cache references sessions. To analyze where those sessions are opened, see the 'Analyze Unclosed Sessions' page.

Do Not Kill the Process

The CRX process should never be killed, also not when stopping takes too long. If you need to kill a process that is not responding, please create a full thread dump first and log a bug.

If you do kill the CRX process, the next time you start it up the Tar PM may create backup_.tar files.

 

分享到:
评论

相关推荐

    Jstack分析工具——IBM Thread and Monitor Dump Analyzer for Java

    需要本地安装JDK并配置JAVA环境变量。 之后使用java -jar jca469.jar即可打开工具。 直接将dump出来的堆栈信息,打开,便可分析。

    Python Social Media Analytics: Analyze and visualize data from Twitter, YouTube

    Analyze and extract actionable insights from your social data using various Python tools A highly practical guide to conducting efficient social media analytics at scale Who This Book Is For If you ...

    Ecommerce analytics :analyze_and_improve_the_impact_of_your_digital_strategy

    Profit from analytics throughout the entire customer experience and lifecycle Make the most of all the fast-changing data sources now available to you For all ecommerce executives, strategists, ...

    medini-analyze

    • Quality analysis for product design and related processes according to SAE J1739, VDA quality handbook, etc. • Safety analysis and design according to ISO 26262 for software-controlled safety-...

    wireshark analyze

    By Wireshark analyze a ‘ping’ commond Open wireshark select our network In order to analyze ping commond, usually select wlan use filter : icmp(Internet Control Message Protocol), because ICMP...

    Ecommerce analytics - analyze and improve the impact of your digital

    Ecommerce analytics - analyze and improve the impact of your digital Ecommerce analytics - analyze and improve the impact of your digital

    Analyze_Oracle_Table.rar_Table_analyze orac_analyze orac_oracle

    "Analyze_Oracle_Table.rar"这个压缩包文件的主题聚焦于Oracle表的分析,目的是提升查询和执行操作的效率。Oracle的性能可能会因为各种因素而下降,例如索引未被有效利用、数据分布不均匀或者统计信息过时等。因此,...

    ANALYZE FORMAT 文档资料~

    ### Analyze Format:一种用于MRI图像存储的专用格式 #### 一、概述 Analyze Format是一种专门用于存储医学影像数据的文件格式,特别是在磁共振成像(MRI)领域有着广泛的应用。该格式由美国梅奥诊所(Mayo Clinic...

    Provisioned Analysis of Data-Centric Processes.

    We observe that analysts of such applications often want to do more than analyze a specific instance of the application’s pro- cess control and database. In particular they want to in- teractively ...

    convert_matlab下dicom转analyze_GUIHIMTconvert_dicomanalyze_

    在医疗成像领域,DICOM(Digital Imaging and Communications in Medicine)是一种广泛使用的图像文件格式,用于存储、传输和打印医学图像。而ANALYZE是另一种常用的医学图像格式,尤其在研究领域应用广泛。MATLAB是...

    vss批量analyze,很好用的!

    ### VSS 批量 Analyze 实用技巧 在软件开发过程中,版本控制系统是不可或缺的工具之一,它能够帮助团队管理代码的变化、追踪历史版本并协同工作。Visual SourceSafe(简称 VSS)作为早期广泛使用的版本控制工具之一...

    PHP 7 - Data Structures and Algorithms

    Analyze algorithms and learn when you should apply each solution ? Explore the true potential of functional data structures Who This Book Is For This book is for those who want to learn data ...

    前端开源库-analyze-css

    《analyze-css:深入理解前端CSS分析与优化》 在当今的Web开发中,前端性能是决定用户体验的关键因素之一,而CSS作为构建网页样式的核心技术,其优化显得尤为重要。"analyze-css"是一个强大的开源库,专为前端...

    Android Security- Attacks and Defenses

    It also explains how to analyze security implications for Android mobile devices/applications and incorporate them into enterprise SDLC processes. The book’s site includes a resource section where ...

    Synthesize & Power Analyze

    Synthesize & Power Analyze

    Google Cloud Platform for Architects Design and manage powerful cloud epub

    Leverage Google Cloud Platform to analyze and optimize technical and business processes Book Description Using a public cloud platform was considered risky a decade ago, and unconventional even just a...

    Analyze6.exe

    在VC盘安装analyze6.exe,可解决link问题

    MATLAB Programming for Biomedical Engineers and Scientists

    Analyze problems and apply structured design methods to produce elegant, efficient and well-structured program designs Implement a structured program design in MATLAB, making good use of incremental ...

Global site tag (gtag.js) - Google Analytics