高性能实践

1、认识性能

从用户体验来看,性能就是响应时间短;

从开发角度来看,性能主要是执行效率高。

性能主要表现形式如下:

(1)响应时间,AVG、MAX、MIN、TP95、TP99

(2)吞吐量,QPS、TPS

(3)资源利用率,CPU、内存、网络IO、磁盘IO

(4)错误率

2、影响性能的常见问题

2.1 业务代码问题

(1)扩大数据库查询范围,原本只需要查询少量数据,却使用了大而全的查询

(2)对没有前后依赖的业务逻辑,用串行实现

(3)随意输出日志,拖慢程序性能

2.2 外部依赖问题

(1)下游服务性能较差

(2)Redis结点配置不足

(3)跨地域

2.3 基础组件问题

(1)使用懒加载lazy-init,导致第一次访问响应时间长

(2)线程池滥用,导致内存和CPU负载过高

3、性能提升策略

(1)串行改为并行处理

(2)同步改为异步处理

(3)每次都执行改为结果缓存,以空间换时间

(4)查询最少数据,避免数据传输压力

(5)合并多次查询,避免多次查询造成性能下降

(6)分页查询

(7)延迟加载

相关推荐
wtrees_松阳2 小时前
【弦断九章·CPU篇】鸿蒙应用性能优化心法
华为·性能优化·harmonyos
liuxuzxx6 小时前
containerd的CPU过高的问题排查
容器·性能优化·kubernetes
趣知岛7 小时前
JavaScript性能优化实战大纲
开发语言·javascript·性能优化
卓码软件测评8 小时前
第三方软件测评机构:【Gatling构建JSON请求体StringBody、ElFileBody和Pebble模板的使用】
测试工具·性能优化·json·测试用例
·云扬·9 小时前
MySQL中count(*)深度解析与性能优化实践
数据库·mysql·性能优化
syt_biancheng12 小时前
大规模考试系统性能优化与风险评估
python·功能测试·selenium·性能优化·postman
卜锦元13 小时前
Golang后端性能优化手册(第二章:缓存策略与优化)
开发语言·数据库·后端·性能优化·golang
·云扬·14 小时前
MySQL排序与分组性能优化:从原理到实践
android·mysql·性能优化
写代码的小阿帆14 小时前
MySQL索引原理与性能优化
数据库·mysql·性能优化
一只会奔跑的小橙子15 小时前
性能测试中关于硬件环境的测试
性能优化