死磕P7:JVM性能调优(一)

p7   jvm   java  
发布于 Sep 28, 2024

这是「死磕P7」系列第 007 篇文章,欢迎大家来跟我一起 死磕 100 天,争取在 2025 年来临之际,给自己一个交代。

什么是性能优化,说白点就是:为了花最少的钱,娶到最漂亮的媳妇呗!

性能优化不是一句话,两句话能实现的,要根据具体情况具体对待,有时候需要加内存,有时候需要加CPU,有时候需要加人,有时候需要删减代码,反正要达到某一个目的,有很多种选择,有一个名言叫做:条条大路通罗马

当然我们还是希望用最少的资源,实现最好的性能,有时候不一定是最好,至少能够满足特定时候的需要吧,比如双十一要来了,压力会增大N倍,机器资源有限的情况下,大家伙把程序性能优化优化。

说到 JVM 的性能优化,无非就是一些常用内存区域配置,启动的参数配置,还有就是结合线上运行的情况排查哪部分代码比较低效,哪里死锁了,哪个部分耗时较长等等有针对性的进行解决。

要想性能得到优化,根据经验,升级 JVM 版本是最直接的方法,大家可以参考我之前的压测文章(往前翻一番,有更多有价值的文章哟)

调优一定要有目的性,要有数据化衡量标准,比如当前程序的 tps 是多少,希望达到多少,当前内存占用是多少,是否可以降低一点占用,当前的响应时间是多少,能否降低延迟等等,没有数据化量化参考的优化是无意义的,程序好不好,只有跑起来才知道,是骡子是马,拉出来溜溜。

俗话说:知己知彼百战百胜,如果你不知道你的程序运行的是什么样子,那么你也就不可能知道如何去调优它,对于 JVM 调优常用的工具如下:

当然 JDK 还带有一些其他的命令,有些不一定用得上,可以再 $JAVA_HOME/bin 下查看到

今天没有介绍太多东西,偷个懒,凑个数,大家随便看看就好,争取把性能分析这块多探究探究,毕竟是比较实用的东西,别管面不面试吧,自己能真正用上才是王道。

本次的分享到此结束,希望对你有所帮助。

如果你对我分享的内容感兴趣,欢迎扫码关注公众号:新质程序猿,并设置星标,推送更实时哟!

本文由 黄彦祥 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。
可自由转载、引用,但需署名作者且注明文章出处。