0%

性能优化的步骤

性能优化的步骤

一、发现问题(性能监控)

可能存在的问题:GC频繁、cpu load过高、OOM、内存泄漏、死锁、程序响应时间过长

二、排查问题(性能分析)

分析方式或工具

  • 打印GC日志,通过GCviewer或者http://gceasy.io来分析日志信息
  • 命令行工具,如jstack、jmap、jinfo等
  • dump出堆文件,使用内存分析工具分析文件
  • 使用阿里Arthas或jconsole、JVisualVM来实时查看JVM状态
  • jstack查看堆栈信息

三、解决问题(性能调优)

解决的大致方向如下

  • 适当增加内存,根据业务背景选择垃圾回收器
  • 优化代码,控制内存使用
  • 增加机器,分散节点压力
  • 合理设置线程池线程数量
  • 使用中间件提高程序效率,比如缓存,消息列队等