`

Java的WEB应用性能问题定位方法总结(一):常见的性能指标分析

 
阅读更多

<!-- Baidu Button BEGIN -->

其实早就想对于性能问题的定位做一个总结。正好,最近做了一些Java的WEB应用性能问题的定位的专题工作,这里简单记录一些典型的性能问题定位方法。

(比如TPS偏低、吞吐量不足等:这些指标问题由下面说的多个指标造成,故不在单独讨论的范围之内)

 

应用CPU占用偏高,可能的因素包括:

逻辑复杂、算法效率低下

过度逻辑

检查方法:

JProfiler检查热点,等到系统稳定以后采集数据

截取堆栈,检查runnable线程,尤其对定位吞吐量不足造成的CPU占用偏高问题有帮助

 

堆栈占满,可能的因素包括:

堆配置过小

缓存配置过大

内存泄露

不及时的GC

检查方法:

jmap -heap 获取堆的详细信息

jmap -histo 获取不同对象的数量

多次jmap -heap 或 jhat 比较两个状态之间的对象变化情况

GC日志,使用工具辅助分析

 

DB瓶颈,可能的因素包括:

大表查询

不合理的索引

大表关联

待补充

检查方法:

分析SQL的执行计划,比如有的SQL可以走索引的结果走了全表扫描;哪些SQL cost偏高,需要优化

待补充。

 

磁盘I/O瓶颈,可能的因素包括:

检查方法:

vmstat

iostat

网络瓶颈,可能的因素包括:

检查方法:

查看Tomcat线程堆栈的时候会发现Tomcat线程池中的N多线程处于数据读取状态

ifconfig

 

其他问题:

LoadRunner瓶颈

开发模式配置检查

分享到:
评论

相关推荐

    JavaMelody JAVA Web项目服务器性能监控工具

    通过在Java Web应用中简单集成,JavaMelody就能提供包括请求处理时间、SQL查询、内存使用、线程信息、异常跟踪等多种关键性能指标的可视化报告。 首先,JavaMelody的核心功能在于其丰富的监控指标。它能够监控HTTP...

    java web开发性能监测工具

    6. **New Relic**: New Relic提供了一套全面的性能监控解决方案,包括Web应用性能、数据库性能、服务器健康状况等。它具有丰富的可视化报告,便于理解性能问题。 7. **Arthas**: Arthas是阿里巴巴开源的一款命令行...

    Java web Service性能监视

    Java Web Service性能监视是针对基于Java的Web服务应用程序的性能监控过程,主要目的是确保系统高效稳定运行,并在问题出现时能够快速定位和解决。在大型企业如电信或移动级别公司的运营中,数据库管理员(DBA)的...

    java服务程序性能测试总结

    5. **函数调用耗时**:利用Java的Profiling工具(如JProfiler)分析方法调用栈,定位耗时点。 6. **提高响应速度**:减少IO操作,优化算法,使用异步处理,提升并发处理能力。 在测试过程中,我们应持续关注性能...

    基于Java平台的Web应用系统业务性能监测.pdf

    文档《基于Java平台的Web应用系统业务性能监测》主要讨论了在现代IT应用中,随着业务复杂性的增加,企业面临业务需求变化快、用户体验要求提高、性价比追求高,导致IT应用在运行过程中可能发生的性能下降或服务不...

    基于Java平台的Web应用系统业务性能监测.zip

    内存泄漏检测也是Java Web应用性能监测的关键。使用如VisualVM、JProfiler等工具,可以实时监控Java应用的内存使用情况,发现并解决潜在的内存泄漏问题。 最后,性能测试是验证系统性能的重要手段。工具如JMeter、...

    一种针对java web 应用的集中监控和预警方法.docx

    ### 一种针对Java Web应用的集中监控和预警方法 #### 技术背景及意义 随着互联网技术的发展,Java Web应用已成为企业信息化建设的重要组成部分。然而,随着应用规模的增长和技术复杂性的增加,对于Java Web应用的...

    基于Web的Java应用性能监测系统设计与实现.zip

    基于Web的Java应用性能监测系统设计与实现是解决这一问题的关键技术,它旨在通过实时监控、分析和优化Java Web应用程序的运行状态,确保系统的稳定性和高效性。下面将详细探讨这个主题。 首先,我们需要理解Java ...

    javaweb远程性能分析

    JavaWeb远程性能分析是针对基于Java的Web应用程序在运行时的性能进行监控和优化的过程。这一过程涵盖了服务器响应时间、内存使用、CPU占用率、线程状态等多个关键指标,旨在发现并解决可能导致系统瓶颈或故障的问题...

    JavaMelodyJavaEE应用性能监测和分析工具

    JavaMelody通过收集和展示一系列关键指标,如请求处理时间、内存使用、数据库查询效率等,帮助优化应用性能并及时发现潜在的问题。 JavaMelody的核心功能包括: 1. **请求跟踪**:记录每个HTTP请求的处理时间和...

    《软件性能测试、分析与调优实践之路-第二版》ppt 课件总结

    1. **理解系统性能指标**: - **并发访问量**:评估系统在高并发环境下的承载能力。 - **平均响应时间**:衡量用户操作或请求所需的时间。 - **事务处理速度(TPS)**:单位时间内能够完成的操作次数。 2. **识别...

    捉虫记 大容量Web应用性能测试与LoadRunner实战

    《捉虫记 大容量Web应用性能测试与LoadRunner实战》一书主要聚焦于Web应用程序的性能测试领域,尤其强调了在大容量场景下的测试策略和技术。LoadRunner作为业界广泛使用的性能测试工具,是本书的核心内容。以下是该...

    web应用分析利器-xrebel

    总结起来,XRebel是一款不可或缺的Web应用性能分析工具,它提供了一种直观、实时的方式,帮助开发者定位和解决问题,从而提升应用的性能和稳定性。无论是在开发阶段还是在生产环境中,它都能发挥巨大的作用。配合...

    图表技术在Java Web应用程序中的应用研究.zip

    例如,通过对服务器性能指标(如CPU使用率、内存占用、网络流量等)的实时图表展示,可以快速定位问题,提高运维效率。 总之,图表技术在Java Web应用程序中的应用广泛且深具价值。开发者需要熟练掌握各种图表库,...

    京东金融性能测试指南

    - **如何定位性能问题**:介绍了一套系统的方法来定位性能问题。 - **常见性能问题参考**:列举了一些常见的性能问题案例及其解决思路。 - **性能调优**: - **性能调优目标与策略**:明确了性能调优的目标和...

    jmeter WEB性能测试自学书籍入门到精通PDF下载

    10. **故障检测与调试**:学习如何通过Jmeter识别和定位性能问题,包括查看日志、分析异常响应、使用断言检查响应内容等技巧。 本书将通过实例教学,逐步引导读者从零基础到精通Jmeter,使你能够独立完成Web应用的...

    一个对JAVA应用程序运行情况进行追踪、告警和分析的系统.zip

    SkyWalking 是一个强大的开源项目,专门用于监视和分析Java应用程序的运行情况,提供全面的应用性能监控(APM)解决方案。这个系统能够帮助开发者和运维人员深入理解应用程序的性能瓶颈,及时发现并解决问题,确保...

    观察者,基于 Java 开发的 Android &amp; WEB 应用监控服务.zip

    总结,"观察者"是一个利用Java技术实现的跨平台监控服务,针对Android和WEB应用,提供性能监控、故障排查、日志分析等功能,通过观察者模式实现实时通知,并具备强大的扩展性和定制化能力,确保应用的稳定性和高效性...

Global site tag (gtag.js) - Google Analytics