profiling

27
JAVA PROFILING Jakub Kubrynski [email protected] www.kubrynski.com

Upload: jakub-kubrynski

Post on 22-May-2015

531 views

Category:

Technology


3 download

DESCRIPTION

Profiling Java applications

TRANSCRIPT

Page 2: Profiling

WHOAMI ?

Page 3: Profiling

WHOARE

YOU ?

Page 4: Profiling

WHY?

Page 5: Profiling

- jvm basics- problems- tools- demo- questions

Page 6: Profiling
Page 7: Profiling

--------------------------------------------------------------------------------------MEMORY MEMORIESMEMORY MEMORIES

EDENSURVIV.FROM

SURVIV.TO

TENUREDPERMGEN

CODECACHE

YOUNG GENERATIONOLDGEN

METHODAREA

NATIVEAREA

HEAP NON-HEAP

CALLSTACK

Page 8: Profiling

object la

yout

object la

yout

Page 9: Profiling

GCROOTS

Page 10: Profiling

-shallowshallow-deepdeep- retainedretained

Page 11: Profiling

-------------------------------------------SIZE MATTERS

Obj 1

Obj 3

Obj 4

Obj 2

GCroot

Page 12: Profiling

- NEW- RUNNABLE- BLOCKED- WAITING- TIMED_WAITING- TERMINATED

Page 13: Profiling

CommonCommonproblemsproblems

Page 14: Profiling

memory leaks

Page 15: Profiling

I/O PROBLEMSI/O PROBLEMS

Page 16: Profiling

DEADLOCKS

Page 17: Profiling

TOOLS

Page 18: Profiling

-------------------------------------------*NIX TOOLS

- top/htop- iostat- netstat- free

Page 19: Profiling

JVMTI

Page 20: Profiling

-------------------------------------------JDK TOOLS

- jps- jinfo- jmap- jstat- jhat- jstack- VisualVM (jvisualvm)

Page 21: Profiling

PROFILERS

Page 22: Profiling

MATERIALS

Page 23: Profiling
Page 24: Profiling
Page 25: Profiling

LIVE DEMOgithub.com/jkubrynski/profiling

Page 26: Profiling
Page 27: Profiling

THANKYOU!