4006-998-758
3000+课程任你选择
Java高级使用技巧及性能调优课程设计
研发学院 Java 性能调优 开课时间:2023-02-16
曹雪松

曾担任淘宝技术总监、华胜天成项目经理,精通软件设计的理论、实践和工具,有10年以上的大型项目研发及项目管理经验,曾经策划多个大型项目与网站的架构,主持过访问量达亿级大型网站,熟悉大型网站的优化与运维。掌握多种开发平台熟悉各种中间件框架平台,研究过大量开源的框架平台,经过多年实践形成自己架构风格,擅长Java、javaEE方面的各种技术; 在软件架构、设计模式、详细设计、重构、海量数据处理和优化、中间件技术、nosql等方面有丰富的实践经验亲自参与实施项目:淘宝数据魔方,淘宝服务平台,国电调试所项目管理系统,中科院子午工程数据与通信系统,某大型电子商务网站架构、项目管理、性能优化,苏州金莱克洁具有限公司ERP项目,苏州海关保税加工辅助核销系统等。


查看老师详情
课程内容


课程大纲

课程主题

课程内容

第一部分

高性能整体分析

一、高性能整体分析

1.时间都花在哪了

2.性能关键指标

3.竞拍案例分析

二、高性能设计

1.单机高性能设计分析

2.集群高性能设计分析

三、90%的常见性能问题排查分析

1.常见代码性能问题及解决方案分析

2.常见CPU负载和使用率分析及解决方案分析

3.常见内存相关问题分析及解决

4.常见磁盘IO和网络IO问题分析及解决

四、性能优化的流程

1.性能优化流程概述

2.性能调优通用准备阶段

3.瓶颈点分析工具概述(性能优化工具图谱)

4.核心性能指标

第二部分

jvm调优-理论篇

 

 

1.JVM 基础知识

2.Java 字节码技术

3.JVM 类加载器

4.JVM 内存模型

5.常见的 JVM GC 算法(Parallel GC/CMS GC/G1 GC)基本原理和特点

6.新一代 GC 算法(Java11 ZGC/Java12 Shenandoah) 和 Oracle GraalVM

7.JVM 启动参数详解

第三部分

Jvm调优-工具篇

一、相关工具使用

1.内置工具1-监控类工具:jps、jstat

2.内置工具2-故障排查类工具:jinfo、jmap

3.内置工具3-故障排查类工具:jstack、jhat

4.内置工具4-故障排查类工具:jcmd、jhsdb

5.内置工具5-可视化工具:jhsdb-hsdb

6.内置工具6-可视化工具:jconsole

7.内置工具7-可视化工具:VisualVM

8.内置工具8-商业授权工具:JMC

9.第三方工具1-MAT

10.第三方工具2-JITWatch

11.第三方工具3-Arthas

12.日志分析工具1-GCVIEW

13.日志分析工具2-easygc

二、案例分析

1.手把手分析GC日志

2.内存持续上升,我该如何排查问题

3.JVM问题排查实战

4.GC疑难情况排查及分析实战

第四部分

Java核心库性能调优

 

1.集合库常用类源码分析及优化

2.文件IO处理及优化

3.如何解决高并发下I/O瓶颈

4.网络通讯下的数据协议优化

5.如何优化RPC网络通讯

6.深入了解NIO的优化实现原理

7.深入理解Synchronized同步锁的优化方法

8.深入理解Lock同步锁的优化方法

9.哪些操作会导致上线文切换

第五部分

JUC使用及优化

一、原子类框架

1.基本数据类型

2.数据类型

3.引用类型

4.对象字段类型

二、锁Lock

1.Lock和ReadWriteLock接口

2.Condition接口

3.LockSupport

4.AbstractQueuedSynchronizer同步器

5.重入锁

6.读写锁

三、阻塞队列

1.七种阻塞队列(BlockingQueue)

2.BlockingDeque双端队列 ,LinkedBlockingDeque

3.ConcurrentLikedQueue

4.ConcurrentLinkedDeque

四、并发集合容器

1.CopyOnWriteArrayList

2.ConcurrentSkipListMap

3.ConcurrentHashMap

4.CopyOnWriteArraySet

5.ConcurrentSkipListSet

五、并发工具类

1.Semaphore

2.CountDownLatch

3.CyclicBarrier

六、执行器框架

1.线程池

2.Future&CallAble

3.ForkJoin

第六部分:

缓存调优

内容一、缓存调优

1.页面缓存

2.页面片段缓存

3.浏览器缓存

4.反响代理服务器缓存

5.数据库前端缓存

内容二、分布式缓存Redis

1.数据结构:快速的Redis又哪些慢操作

2.String,为什么不好用了

3.一亿个keys要统计,应该使用哪种集合

4.GEO是什么?还可以定义新的数据类型嘛?

5.如何在Redis中保存时间序列数据

6.AOF日志:宕机了,Redis如何避免数据丢失

7.内存快照:宕机后,Redis如何实现快速恢复

8.比较Redis和Memcached

内容三、缓存异常

1.如何解决缓存和数据库的数据不一致问题

2.缓存雪崩

3.缓存击穿

4.缓存穿透

5.缓存污染

第七部分

综合案例分析

1.记一次双十一抢购性能瓶颈调优

2.微信红包高性能复杂度分析实战


返回上一级