9 个 Java 性能调优技巧,YYDS!
程序员的成长之路
共 4270字,需浏览 9分钟
· 2022-07-09
阅读本文大概需要 6 分钟。
来自:dzone.com/articles/11-simple-java-performance-tuning-tips
1. 在明确必要之前别急着优化
2. 使用分析器找到真正的瓶颈
查看你的代码,从看起来可疑的或者你觉得可能会导致出现问题的地方入手。 或者使用分析器获取代码每个部分的行为(执行过程)和性能的详细信息。
3. 为整个应用程序创建一个性能测试套件
4. 优先关注最大瓶颈
5. 使用 StringBuilder 以编程方式连接字符串
for
循环中,则应使用 StringBuilder
。它很易于使用,并提供比 StringBuffer
更好的性能。但请记住,与 StringBuffer
相比, StringBuilder 不是线程安全的,可能并不适用于所有情况。StringBuilder
并调用append
方法来向String
中添加一个新的部分。在你添加完了所有的部分后,你可以调用toString()
方法来检索已连接的字符串。 下面的代码片段展示了一个简单的例子。在每次迭代期间,该循环将 i 转换为一个 String
,并将其与空格一起添加到 StringBuilder sb 中。所以,最后,这段代码在日志文件中写入 “This is a test0 1 2 3 4 5 6 7 8 9” 。StringBuilder sb = new StringBuilder(“This is a test”);for (int i=0; i<10; i++) {
sb.append(i);
sb.append(” “);
}
log.info(sb.toString());
StringBuilder
。这进一步提高了效率,因为它不需要动态扩展其容量。6. 尽可能使用基本类型
7. 尽量避免大整数和小数
8. 使用 Apache Commons StringUtils.Replace 而不是 String.replace
// replace this
test.replace(“test”, “simple test”);
// with this
StringUtils.replace(test, “test”, “simple test”);
9. 昂贵的缓存资源,如数据库连接
总结
在你知道其必要性之前不要进行优化 使用分析器(profiler)来查找真正的瓶 优先处理最大的瓶颈
互联网初中高级大厂面试题(9个G) 内容包含Java基础、JavaWeb、MySQL性能优化、JVM、锁、百万并发、消息队列、高性能缓存、反射、Spring全家桶原理、微服务、Zookeeper......等技术栈!
⬇戳阅读原文领取! 朕已阅
评论
轻松掌握开源项目的二次开发技巧
大厂技术 高级前端 Node进阶点击上方 程序员成长指北,关注公众号回复1,加入高级Node交流群本文作者:@方长_beezen 原文链接:https://juejin.cn/post/7358647992608489535前言随着软件行业的迅速
程序员成长指北
0
豆瓣9.7,这部Java神作第3版重磅上市!
文末赠书Java 程序员们开年就有重磅好消息,《Effective Java 中文版(原书第 3 版)》要上市啦!该书的第1版出版于 2001 年,当时就在业界流传开来,受到广泛赞誉。时至今日,已热销近20年,本书第 3 版已是 Java 程序员的必读神书,被誉为“Java 四大名著之一”,甚至连
编码之外
0
真心建议大家搞个香港身份,再不冲就晚了
香港一直有“互联网荒漠”之称,疫情这三年,香港开始大力扶持互联网 科技工程 /IT产业,公布了《香港智慧城市蓝图》。目前规划已经覆盖到交通、医疗、经济、教育、环境等多个方面。目前在智能制造,5G网络、智慧城市等领域人才,通过香港优才计划入境都极具优势。什么是香港优才计划优才计划,全称优秀人才入境计划
公子龙
0
Python加速运行技巧
Python 是一种脚本语言,相比 C/C++ 这样的编译语言,在效率和性能方面存在一些不足。但是,有很多时候,Python 的效率并没有想象中的那么夸张。本文对一些 Python 代码加速运行的技巧进行整理。 0. 代码优化原则 本文会介绍不少的 Python 代码加速运行的技巧。在深入代码优化细
机器学习算法与Python实战
0
Vite 4.3 为何性能爆表?
大厂技术 高级前端 Node进阶点击上方 程序员成长指北,关注公众号回复1,加入高级Node交流群Vite 4.3 相比 Vite 4.2 取得了惊人的性能提升,下面和大家分享一下 Vite 4.3 性能大幅提升的幕后技术细节,深度阅读,全程高能
程序员成长指北
0
大量 Java 开源项目停更...
点击关注公众号,Java 干货及时推送↓推荐阅读:投了 100 多份简历后…出品 | OSC开源社区(ID:oschina2013)Sonatype 发布了最新的一份《软件供应链状况》报告,深入探讨了如何在充满选择的世界中定义更好的软件,并探讨人工智能 (AI) 对软件开发的深远
Java技术栈
0
10个高级的 SQL 查询技巧
来源:towardsdatascience.com/ten-advanced-sql-concepts-you-should-know-for-data-science-interviews-4d7015ec74b0👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Jav
小哈学Java
0
Java 神作,必读!
Java 程序员们开年就有重磅好消息,《Effective Java 中文版(原书第 3 版)》要上市啦!该书的第1版出版于 2001 年,当时就在业界流传开来,受到广泛赞誉。时至今日,已热销近20年,本书第 3 版已是 Java 程序员的必读神书,被誉为“Java 四大名著之一”,甚至连 Java
小哈学Java
0