JVMアプリケーションの最適化は、ボトルネックを見つけるためのプロファイリング、JVM/GCチューニング、コードレベルでの改善、およびJITコンパイラの活用にまたがっています。いつもどおり、ルールは:まず測定し、証明されたボトルネックを最適化する — 推測しないこと。
Profile before optimizing
text
Tools:
✓ JProfiler / YourKit / VisualVM — CPU & memory profiling, hotspots
✓ Java Flight Recorder (JFR) + Mission Control — low-overhead production profiling
✓ async-profiler — flame graphs for CPU/allocation
✓ heap dumps + Eclipse MAT — memory leak analysis
プロファイリングは、時間とメモリが実際どこに費やされているかを明らかにするため、無関係なコードをマイクロ最適化するのではなく、重要な本当の20%を修正します。
