前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >五种JVM性能优化技巧

五种JVM性能优化技巧

作者头像
lyb-geek
发布2022-03-09 20:20:37
4840
发布2022-03-09 20:20:37
举报
文章被收录于专栏:Linyb极客之路Linyb极客之路

优化Java代码需要理解Java中不同元素是如何交互的,以及与操作系统是如何交互的,下面五个技巧帮助你分析和优化代码。

性能优化依赖于许多情况,比如垃圾回收,虚拟机和底层操作系统设置。有许多工具帮助开发者分析和优化。通过一下网址可以了解学习Java源码分析和优化工具

https://dzone.com/articles/java-tools-source-code

下面是五个技巧建议: 1.微调垃圾回收机制

挖掘到你的应用真正性能是很难的,因为垃圾回收机制很复杂,如果你要优化应用,需要首先处理垃圾回收,通常目标是改变GC设置,同时执行调校。 一旦你比较满意调校结果,就要停止调校,不要再试验其他优化方式,确保平均处理时间符合你的大概要求。 另外你需要理解在运行期间的性能影响点,单次数据库处理如果有减慢需要值得注意。 2.寻找正确的GC算法

GC每个不同算法应对不同需求,GC四种算法是:序列收集器、并行/吞吐量收集器、CMS收集器和G1收集器。通过如下网站

https://blog.takipi.com/garbage-collectors-serial-vs-parallel-vs-cms-vs-the-g1-and-whats-new-in-java-8/

可以学习垃圾回收机制的资源,也讨论了Java 8的GC算法

CMS(并行标记并交换GC的简称)是适合大多数Web应用的算法,而并行GC是适合有内建可预测模型的应用。 G1和CMS都是并发应用的理想选择,但是会引起频繁暂停,需要平衡选择。 3. Java heap

Java内存堆是保证内存需要的关键方式,开始是很小的内存堆分配,持续不断增加,大部分优化问题可以通过增加堆大小解决,但是如果有GC过于频繁,增加堆内存大小不一定能够解决。 GC过载过于频繁也会降低吞吐量,使得应用出乎意料地慢,分配堆内存大小能够减轻这个问题,你可以从1GB到8GB选择堆内存大小,老生代和新生代对象也需要考虑,堆大小依赖老生代到新生代的比例。 4.核心应用优化

调整应用架构,关注跟踪你的应用中对象来龙去脉,有助降低内存碎片,堆问题和垃圾回收问题。 5.使用优化函数

几种有助提升性能的函数: (1).使用StringBuilder而不是+操作符 (2).避免使用 iterator(). (3).最大化利用stack栈 (4).避免正则表达式,使用Apache Commons Lang取代 (5).远离递归循环,递归循环是资源密集型。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-09-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Linyb极客之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档