Java问题诊断与性能调优
Mike Li 查看讲师
百林哲咨询(北京)有限公司专家团队成员
某大型互联网 JVM Architect,前IBM Multi-tenant JVM项目技术主管,毕业于同济大学,曾供职于Intel、汤森路透,10+年的Java开发经验。
浏览:4643次
详情 DETAILS

简介

使用Java开发过程中, 作为我们研发人员,既需要有有效的工具来排查软件交付使用过程中碰到的功能性异常,典型诸如OOM,Dead Lock, 异常抛出等。同时,在非功能性方面,软件性能是否达到既定预期,具体到譬如系统资源CPU,内存等是否使用合理,GC是否运行正常等,也需要有合理的手段来诊断分析。这个课程旨在帮助从事Java的开发人员,测试人员,从JavaVM的视角出发,如何针对不同的问题场景选择合理的诊断方法,工具, 找到这些问题的解决途径。

目标

1、了解JVM基础、GC调优、JIT调优

2、掌握Java问题排查方法、应用性能分析方法

3、帮助学员对Diagnostic Tools进行问题诊断、性能调优

课程时长

1天(6H)

受众人群

从事Java的开发人员、测试人员

分享提纲

第一部分  原理篇

本部分主要覆盖JVM基本原理,重点介绍GC/JIT调优,这也是一般开发中最常见的两类问题排查。

1. JVM基础

1.1 操作系统与JVM

1.2 JVM内部剖析

1.3 32bit JVM与64bitJVM

2. GC调优

2.1 JVM 内存布局

2.2 GC基础

2.2.1 Mark and Seep

2.2.2 Mark and Compact

2.2.3 Mark and Copy

2.3 HotSpot GC: CMS/G1揭秘

2.4 GC调优误区

3. JIT调优

3.1 JIT基础

3.2 HotSpot JIT调优实践

     教学时长: 3H

第二部分  方法篇本部分主要从方法学的角度,来讲授在实际的Java问题排查,性能调优过程中,应该遵循的基本方法学原则

1. Java问题排查方法学

1.1  Java常见问题排查导图

1.2  解决常见问题思路

1.2.1 OOM

1.2.2 Thread/Synchronization

1.2.3 GC Log

2. 应用性能分析方法学

2.1  性能分析方法学:  Layered和Outside-in

2.2  分层性能方法应用

2.2.1 OS层面分析

2.2.2 JVM层面分析

2.2.3 应用程序层面分析

      教学时长: 2H

第三部分  实践篇各种排查工具原理,使用介绍以及案例分享

1. Monitoring,Profiling,Debugging原理

1.1  JMX以及性能监控

1.2  Profiling

1.2.1 Instrument-based Profiling技术

1.2.2 Sampling-based Profiling技术

1.2.3 什么才是最适合你的?

1.3  JVM Debugging原理

2. Diagnostic Tools介绍,及问题诊断,性能调优实例分享

2.1  Diagnostic工具概览

2.2  典型案例分享

2.2.1 什么导致了OOM

2.2.2 谁在消耗你的CPU

2.2.3 频繁GC的幕后黑手


企业服务热线:400-106-2080
电话:18519192882
投诉建议邮箱:venus@bailinzhe.com
合作邮箱:service@bailinzhe.com
总部地址:
北京市-丰台区-汽车博物馆东路6号3号楼1单元902-B73(园区)
全国客户服务中心:
天津市-南开区-桂苑路15号鑫茂集团鑫茂军民园1号楼A座802-803
公众号
百林哲咨询(北京)有限公司 京ICP备2022035414号-1