课程内容
本课程涉及JVM性能优化的各个方面,两天时间。重点阐述JVM相关知识、性能调优实践、相关工具的原理和使用。通过学习,两天时间。可以了解JVM核心原理,两天时间。充分利用现代硬件和操作系统,两天时间。衡量Java性能,两天时间。帮助团队中各种角色的技术人员了解Java性能分析和调优方法,两天时间。编写并部署更高效率的Java应用程序。
课程时长
2天(6小时/天)
课程大纲
第一天
一、课程及讲师介绍 (5 mins))
二、培训总览 (5 mins))
三、性能调优初步 (30 mins))
1. 系统资源限制
2 调优分析层面
3 调优时机
4 基本工具一览
5 Linux工具
三、应用优化概述 (20 mins))
1. 优化原则和时机
2. 架构和设计的重要性
3. 不要过度优化
四、JVM知识和内存模型 (2 hours))
1. JVM基础知识
2. JVM启动参数
3. Clas)s)loader类加载器;
4. 字节码技术,两天时间。CGlib等;
5. JVM 内存模型;
6. Java GC原理,两天时间。垃圾回收时内存管理。
五、Java 调优 (1 hour)
1. JDK命令行工具
2. 实践案例
六、JVM 调优 (2 hours))
1. 性能相关概览
2. 虚拟机参数使用
3. 内存监控
4. GC垃圾收集调优
5. 选择垃圾收集算法
第二天
课程纲要:
一、JVM 调优(续) (2 hours))
1. JIT编译优化
2. 线程监控
3. 磁盘IO
4. CPU记录和调度
5. 类加载调优
二、线程并发 (1 hour)
1. Java线程原理简述
2. Java并发框架
3. 线程池设计
三、异步模型 (1 hour)
1. 同步异步选择和程序员心智
2. Java NIO和Netty网络框架
3. Spring的异步响应式编程
四、应用层中间件调优及对JVM监控 (1 hour)
1. 线程池
2. 数据库连接池
3. 组件池
4. Web容器
5. 状态缓存池
6. 消息部分
五、JVM调优高级工具 (1 hour)
1. JVMTI接口
2. JMC GUI
3. 使用JFR
4. JitWatch
5. Byteman