0
点赞
收藏
分享

微信扫一扫

Java性能调优指南pdf阅读0-100页


1.jvm调优标志

    -XX:+FlagName表示开启,-XX:-FlagName表示关闭

全面的性能调优

  1.编写更好的算法

  2.编写更少的代码

性能测试的原则:

   1.微基准测试

   2.理解批处理流逝时间,吞吐量和响应时间

  如果CPU使用率上升,就需要参考性能分析信息,弄清楚是什么花费了这么多时间,如果GC时间变长,就该查阅堆性能分析信息,搞明白是什么消耗了这么多的内存,如果CPU和GC时间都减少,某些地方的竞争可鞥你降低了性能, 栈数据可以指示特定的同步瓶颈

用户态时间就是CPU执行应用代码所占的时间的百分比,系统态时间就是执行内核代码时间的百分比

  iostat -xm 5

Java性能调优指南pdf阅读0-100页_编译器

%system% 表示进程的百分之三的时间都在等待磁盘.

w_await 用时时间表示队列的长度, wMB/S 表示每秒写入多少数据

对于长时间运行的应用来说,应该一直使用server编译器,最好配合分层编译器

如果堆内存小于3G,那么使用32位的JVM是比较好的。因为JVM内部的指针只有32位,操作32位指针要少于64位的.

对于32位的window机器来说启动时间是重要的而对于64位的Unix的系统来说更关注长期运行的性能。

编译器中级调优其实就是为目标机器上的Java选择正确的jvm和编译器开关,

-client -sever 分层,其中分层编译通常是长期运行应用的最佳选择.

调优代码缓存

JVM比那一代码时,会在代码缓存中保留编译之后的汇编语言指令集.

Java性能调优指南pdf阅读0-100页_数据_02

java执行某个方法时,会检查该方法的两种计数器的总数,然后判定该方法是否适合编译.

-XX:CompileThreshold=10000 1500 标志触发

Java性能调优指南pdf阅读0-100页_编译器_03

 

 

举报

相关推荐

0 条评论