2024最新Java性能优化建议 应用 数据库 机器 网络

应用层面

  1. 反射操作记得缓存method和field,最好能用方法句柄或者字节码增强替换掉
public class PerformanceOptimizationDemo {
   
   
  
  private static final Method METHOD;
  static {
   
   
    METHOD = "获取method";
  }

}

更多细节见 Java反射性能详解

  1. 原生String的split和replaceAll请谨慎使用,StringTokenizer是个更好的选择,或者这里推荐org.apache.commons.lang3.StringUtils#replace(String, String, String)这个工具类
  2. 慎用String.intern,当字符串数量非常多时使用hashmap做缓存性能要好得多
  3. 放弃Random随机数请用ThreadLocalRandom
public static int getRandomNum() {
   
   
	// 性能略差
    return new Random().nextInt();
	// 性能更好的平替
	return ThreadLocalRandom.current().nextInt();
}
  1. 正确应用单例模式,逻辑类尽量使用单例,需注意处理线程安全问题,这里推荐静态工厂方式,其唯一的问题是较多的冗余代码,可使用插件解决
public class PerformanceOptimizationDemo {
   
   
  
  private PerformanceOptimizationDemo(){
   
   
    
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值