性能调优经验理论(方法论)

① 架构层面的优化

1) 水平扩展、无状态化设计

2) 动静分离

② 机器及网络传输优化:

1) 增大机器配置、增大机器网络宽带

2) 压缩传输

3) TCP长连接快速回收、重复利用

③ 框架及代码层面:

1) 合并请求,减少序列化,减少请求数量;

2) 缓存技术:缓存粒度、有效期,缓存预热,二级缓存,本地缓存

3) 异步化调用:消息队列、日志异步

4) 线程池,NIO

5) 减少锁使用

6) 避免频繁创建销毁对象,线程池,数据库连接池,httpPool都是这个道理

④ 数据库层面:

1) 读写分离

2) 降低隔离性,事务隔离性

3) Sql优化,索引,表设计是否合理

4) 批处理,预处理

⑤ 中间件调优:

1) 集群化部署

2) 连接池,工作进程数,线程数

3) 其他各种参数配置调整

⑥ 搭建实时性能监控平台,逐步加压找性能瓶颈:

1) Jmeter

2) Pinpoint、zipkin、influxdb等

3) Jstat、jconsole、jmap、top、free -m、df -h

⑦ JVM调优(稳定性)

1) 堆内存初始化大小,最大

2) 使用G1垃圾回收器


分享到:


相關文章: