【性能调优】调优的常见思路和方法

在通过工具得到异常指标,初步定位瓶颈点后,如何进一步进行确认和调优?在这里提供一些可实践、可借鉴、可参考的性能调优套路,即:如何在众多异常性能指标中,找出最核心的那一个,进而定位性能瓶颈点,最后进行性能调优

以下会按照代码、CPU、内存、网络、磁盘等方向进行组织,针对某一个优化点系统的套路总结,便于思路的迁移实践

一、应用代码相关

遇到性能问题,首先做的是检查否与业务代码相关——不是通过阅读代码解决问题,而是通过日志或代码,排除掉一些与业务代码相关的低级错误

性能优化的最佳位置是应用内部,比如:

  1. 查看业务日志,检查日志内容里是否有大量的报错产生,应用层、框架层的一些性能问题,大多数都能从日志里找到端倪(日志级别设置不合理,导致线上疯狂打日志)
  2. 检查代码的主要逻辑,如for循环的不合理使用、NPE、正则表达式、数学计算等常见的一些问题,都可以通过简单地修改代码修复问题

别动辄就把性能优化和缓存、异步化、JVM 调优等名词挂钩,复杂问题可能会有简单解

了解一些基本的代码常用踩坑点,可以加速问题分析思路的过程,从CPU、内存、JVM等分析到的一些瓶颈点优化思路,也有可能在代码这里体现出来

下面是一些高频的,容易造成性能问题的编码要点

  1. 正则表达式非常消耗CPU(如贪婪模式可能会引起回溯),慎用字符串的split()、replaceAll()等方法,正则表达式一定预编译

  2. String.intern()在低版本(Java 1.6 以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sysu_lluozh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值