1 / 43
文档名称:

最新精品范文-Java性能调优浅谈.pptx

格式:pptx   页数:43
下载后只包含 1 个 PPTX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

最新精品范文-Java性能调优浅谈.pptx

上传人:好文档 2014/12/3 文件大小:0 KB

下载得到文件列表

最新精品范文-Java性能调优浅谈.pptx

文档介绍

文档介绍:Java性能调优浅谈
***@Will
1
提纲
一些相关原理
性能测量指标
性能优化模式
代码调优
JVM调优

2
性能测量指标- 1
各类资源消耗情况:
磁盘IO
内存占用
CPU
数据库
网络
锁竞争

3
性能测量指标- 2
4
性能测量指标- 3
其他最常用的两个指标(OLTP vs. OLAP)
吞吐量
延迟(或响应时间)
低延迟不一定意味着高吞吐量
从山西到广州运煤,一列火车100小时(包括往返)可以运输
10000t 煤,而一架飞机20小时(包括往返)可以运输100t煤。
并发度= 吞吐量* 延迟
比如一个系统处理某种任务的延迟为1ms,吞吐量为 1000tps,
那么并发度就为1/1000 * 1000 = 1,即单线程模型。
5
一些相关原理
80/20原则
木桶原理
系统最终性能取决于系统中性能最差的组件,应该关注性能最
差的组件。
Amdahl定律
定义了串行化系统并行化后的加速比公式(加速比越大,系统
并行化优化效果越好):
加速比= 优化前系统耗时/ 优化后系统耗时
假设加速比为Speedup,系统串行化比率(串行执行代码所占比例)为F,CPU数目为N:
Speedup <= 1 / (F + (1 - F) / N)
即当N一定时,F越小,加速比上限越大。
6
性能优化模式
设计模式
缓冲
缓存
池化
时空互换
并行化
协议优化

7
性能优化模式–单例模式
单例模式
减少频繁创建对象开销、减少内存消耗从而减轻GC压力
8
性能优化模式–代理模式1
延迟重量级对象创建,加快启动速度
9
性能优化模式–代理模式2
动态代理模式不同实现性能比较
ASM方式实现的动态代理函数调用性能最高,但需要对字节码很熟悉,并且不利于维护
JDK本身动态代理函数调用性能最差,而且不够灵活
JDK本身动态代理对象创建性能最高,因为使用native的defineClass()方法
Java Assist和CGLib实现的动态代理函数调用性能优于JDK动态代理,一般推荐用这两种实现动态代理
10