博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
<<代码大全>> 读书笔记之Java性能优化
阅读量:6121 次
发布时间:2019-06-21

本文共 826 字,大约阅读时间需要 2 分钟。

hot3.png

<<代码大全>> 25.6 代码调整方法总结:

1 用设计良好的代码来开如软件,从而使程序易于理解和修改

2 如果程序性能很差:

a 保存代码的可运行版本,这样你才能回到“最近的已知正常状态”

b 对系统进行分析测量,找出热点

c 判断性能拙劣是否源于设计、数据类型或算法上的缺陷,确定是否应该做代码调整,如果不是,请跳回到第一步

d 对步骤c中所确定的瓶颈代码进行调整

e 每次调整后都对性能提升进行测量

f 如果调整没有改进代码的性能,就恢复到步骤a保存的代码(通常而言,超过一半的调整尝试都只能稍微改善性能甚至造成性能恶化)

3 重复步骤 2

25.4 中强调对代码性能的测量. 通过示例指出性能测量的重要性.

如何测量代码性能?

网上搜了下有 jvisualvm 这一类的.但是如果需要知方法里具体步骤对代码的消耗可以用

System.currentTimeMillis();

对比执行前后时间差判断.参考  (里面有关于内存消耗的,个人认为不实用,实际使用中误差很大,而且里面关于AOP的部分,我认为在多数情况下并不适合)

最后:

  • 性能只是软件整体质量的一个方面,通常不是最重要的,精细的代码调整也只是实现整体性能的一种方法,通常也不是决定性的。相对于代码本身的效率而言,程序的架构、细节设计以及数据结构和算法选择对程序的运行速度和资源占用的影响通常会更大

  • 定量测试是实现性能最优化的关键。定量测试需要找出能真正决定程序性能的部分,在修改之后,应当通过重复测量来明确修改是提高还是降低了软件的性能

  • 绝大多数的程序都有那么一小部分代码耗费了绝大部分的运行时间,如果没有测量,你不会知道是哪一部分时间

  • 代码调整需要反复尝试,这样才能获得理想的性能提高

  • 为性能优化工作做好准备的最佳方式就是在最初阶段编写清晰的代码,从而使代码在后续工作中易于理解和修改

转载于:https://my.oschina.net/zhouxiang/blog/611779

你可能感兴趣的文章
Get到的优秀博客网址
查看>>
dubbo
查看>>
【Git入门之四】操作项目
查看>>
老男孩教育每日一题-第107天-简述你对***的理解,常见的有哪几种?
查看>>
Python学习--time
查看>>
在OSCHINA上的第一篇博文,以后好好学习吧
查看>>
高利率时代的结局,任重道远,前途叵测
查看>>
Debian 6.05安装后乱码
查看>>
欢迎大家观看本人录制的51CTO精彩视频课程!
查看>>
IntelliJ IDEA中设置忽略@param注释中的参数与方法中的参数列表不一致的检查
查看>>
关于软件开发的一些感悟
查看>>
uva 10806
查看>>
纯CSS3绘制的黑色图标按钮组合
查看>>
Linux中环境变量文件及配置
查看>>
从0开始学Flutter
查看>>
mysql操作入门基础之对数据库和表的增删改查
查看>>
IIS负载均衡
查看>>
分布式事务,EventBus 解决方案:CAP【中文文档】
查看>>
Linux下的CPU性能瓶颈分析案例
查看>>
spring mvc入门
查看>>