ºÝºÝߣ
Submit Search
´³²¹±¹²¹À¬»øÊÕ¼¯ÔÀí
Jul 17, 2011
Download as ppt, pdf
0 likes
810 views
Y
yin gong
1 of 42
Download presentation
Your download has started
Download now
Downloaded 52 times
Recommended
´³²¹±¹²¹ÄÚ´æ¹ÜÀí
´³²¹±¹²¹ÄÚ´æ¹ÜÀí
lovingprince58
?
Âá²¹±¹²¹ÄÚ´æ¹ÜÀí
·¡³æ´Ç»å³Ü²õÖØ¹¹ºÍÏò²¹±è´Ç±ô±ô´ÇÇ¨ÒÆ
·¡³æ´Ç»å³Ü²õÖØ¹¹ºÍÏò²¹±è´Ç±ô±ô´ÇÇ¨ÒÆ
wang hongjiang
?
Openstack swift, how does it work?
Openstack swift, how does it work?
kao kuo-tung
?
½é½B openstack swift µÄß\×÷·½Ê½
Java7 fork join framework and closures
Java7 fork join framework and closures
wang hongjiang
?
java7, fork-
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª-±ÏÐþ
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª-±ÏÐþ
Èñ ÕÅ
?
180518 ntut js and node
180518 ntut js and node
Peter Yi
?
js and node training
Jvm memory
Jvm memory
benewu
?
±«²õ±ð±·±«²Ñ´¡×öÁËʲô£¿£¨2012-03-14£©
±«²õ±ð±·±«²Ñ´¡×öÁËʲô£¿£¨2012-03-14£©
Kris Mok
?
±«²õ±ð±·±«²Ñ´¡ÔÚ´³¶Ù°6/³¢¾±²Ô³Ü³æÉϵÄʵÏÖ
Aswan&hump
Aswan&hump
wang hongjiang
?
±á²¹»å´Ç´Ç±èѧϰ×ܽá
±á²¹»å´Ç´Ç±èѧϰ×ܽá
ordinary2012
?
Lua gc´úÂë
Lua gc´úÂë
Wei Sun
?
realtime-twitter-search
realtime-twitter-search
ÑǾü Íô
?
Ä¢¹½½ÖʵʱËÑË÷ÒýÇæ
Effective linux.3.(diagnosis)
Effective linux.3.(diagnosis)
wang hongjiang
?
service diagnosis
΢²©ÊµÊ±ËÑË÷
΢²©ÊµÊ±ËÑË÷
ÑǾü Íô
?
ÕâÕÅppt²»È« Çëתµ½http://www.slideshare.net/wangscu/realtimetwittersearch ÕâÀï¹Û¿´
Effective linux.1.(commandline)
Effective linux.1.(commandline)
wang hongjiang
?
dancing in commandline
³§³ó±ð±ô±ô,ÐźÅÁ¿ÒÔ¼°Âá²¹±¹²¹½ø³ÌµÄÍ˳ö
³§³ó±ð±ô±ô,ÐźÅÁ¿ÒÔ¼°Âá²¹±¹²¹½ø³ÌµÄÍ˳ö
wang hongjiang
?
shell, signal, and how jvm handle signal
Sun jdk 1.6 gc
Sun jdk 1.6 gc
bluedavy lin
?
Ö»½éÉÜSun jdk 1.6 JVMÖÐ ÈçºÎʹÓø÷ÖÖ¸÷ÑùµÄGC ͨ³£ÎÊÌâÈçºÎ²éÕÒ Tuning HotspotÊÇÈçºÎʵÏÖGCµÄ
°Â¾±²Ô»å²ú²µÈëÃÅ
°Â¾±²Ô»å²ú²µÈëÃÅ
Ïþ·æ ³Â
?
Java Crash·ÖÎö£¨2012-05-10£©
Java Crash·ÖÎö£¨2012-05-10£©
Kris Mok
?
»ùÓÚOracle/Sun JDKÓëOpenJDKÔÚLinuxÉϵÄcrashµÄ¼¸¸ö°¸Àý·ÖÎö
Sun jdk-1.6-gc
Sun jdk-1.6-gc
Èñ ÕÅ
?
Java GC Tuning
Java GC Tuning
pprun
?
chinese edi
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª
bluedavy lin
?
¹ó±ô²¹²õ³óÓ¦ÓóÌÐòµÄÄÚ´æ¹ÜÀí»úÖÆºÍÓÅ»¯·½·¨
¹ó±ô²¹²õ³óÓ¦ÓóÌÐòµÄÄÚ´æ¹ÜÀí»úÖÆºÍÓÅ»¯·½·¨
¹ó³¢´¡³§±á¿ª·¢Õß½»Á÷»á
?
´³³Õ²ÑÄÚÈݹÜÀíºÍÀ¬»ø»ØÊÕ
´³³Õ²ÑÄÚÈݹÜÀíºÍÀ¬»ø»ØÊÕ
Tony Deng
?
ÓÉͬÊÂÀÏÂÞ·ÖÏí
´³±¹³¾ÄÇЩÊÂ
´³±¹³¾ÄÇЩÊÂ
dynamiclu
?
½²³öÀ´£¬ÊÇ×îºÃµÄѧϰ
´³³Õ²Ñ¼°Æäµ÷ÓÅ
´³³Õ²Ñ¼°Æäµ÷ÓÅ
zhongbing liu
?
1.ÔõôÔËÐУ¿±àÒë×°ÔØÖ´ÐлúÖÆ 2.ÔõôÅäÖã¿JVMÄÚ´æ·Ö´ú 3.ÔõôÅäÖã¿GCÀ¬»ø»ØÊÕ 4.Ôõô¼à²â£¿JVM¼à²â¹¤¾ß 5.Ôõô¼à²â£¿Linux¼à²â¹¤¾ß 6.Ôõôµ÷ÓÅ£¿ÄÚ´æµ÷ÓÅ
´³±¹³¾ÄÚ´æ¹ÜÀí»ù´¡
´³±¹³¾ÄÚ´æ¹ÜÀí»ù´¡
wang hongjiang
?
´³²¹±¹²¹ÄÚ´æ¹ÜÀíÎÊÌâ°¸Àý·ÖÏí
´³²¹±¹²¹ÄÚ´æ¹ÜÀíÎÊÌâ°¸Àý·ÖÏí
bluedavy lin
?
·ÖÏí´³²¹±¹²¹ÄÚ´æ¹ÜÀíÖг£¼ûµÄÈýÖÖÎÊÌâµÄ°¸ÀýÒÔ¼°½â¾ö·½·¨¡£ 1¡¢java.lang.OutOfMemoryError 2¡¢Full GCƵ·± 3¡¢CMS GC³öÏÖpromotion failed»òconcurrent mode failure¡£
ʵսHotSpot JVM GC
ʵսHotSpot JVM GC
digitalsonic
?
Õë¶ÔHotSpot JVM GCÏà¹ØµÄÄÚÈÝ£¬°üÀ¨JVMÄÚ´æ»®·Ö¡¢JVM·ÖÎöÏà¹Ø¹¤¾ß¡¢ÃüÁîÐг£ÓòÎÊý¡¢HotSpot GC²ßÂÔ¡¢ÓÅ»¯°¸Àý·ÖÎöºÍÓÅ»¯½¨ÒéµÈ¡£
Sun jdk 1.6ÄÚ´æ¹ÜÀí -µ÷ÓÅÆª-±ÏÐþ
Sun jdk 1.6ÄÚ´æ¹ÜÀí -µ÷ÓÅÆª-±ÏÐþ
Èñ ÕÅ
?
More Related Content
What's hot
(11)
Aswan&hump
Aswan&hump
wang hongjiang
?
±á²¹»å´Ç´Ç±èѧϰ×ܽá
±á²¹»å´Ç´Ç±èѧϰ×ܽá
ordinary2012
?
Lua gc´úÂë
Lua gc´úÂë
Wei Sun
?
realtime-twitter-search
realtime-twitter-search
ÑǾü Íô
?
Ä¢¹½½ÖʵʱËÑË÷ÒýÇæ
Effective linux.3.(diagnosis)
Effective linux.3.(diagnosis)
wang hongjiang
?
service diagnosis
΢²©ÊµÊ±ËÑË÷
΢²©ÊµÊ±ËÑË÷
ÑǾü Íô
?
ÕâÕÅppt²»È« Çëתµ½http://www.slideshare.net/wangscu/realtimetwittersearch ÕâÀï¹Û¿´
Effective linux.1.(commandline)
Effective linux.1.(commandline)
wang hongjiang
?
dancing in commandline
³§³ó±ð±ô±ô,ÐźÅÁ¿ÒÔ¼°Âá²¹±¹²¹½ø³ÌµÄÍ˳ö
³§³ó±ð±ô±ô,ÐźÅÁ¿ÒÔ¼°Âá²¹±¹²¹½ø³ÌµÄÍ˳ö
wang hongjiang
?
shell, signal, and how jvm handle signal
Sun jdk 1.6 gc
Sun jdk 1.6 gc
bluedavy lin
?
Ö»½éÉÜSun jdk 1.6 JVMÖÐ ÈçºÎʹÓø÷ÖÖ¸÷ÑùµÄGC ͨ³£ÎÊÌâÈçºÎ²éÕÒ Tuning HotspotÊÇÈçºÎʵÏÖGCµÄ
°Â¾±²Ô»å²ú²µÈëÃÅ
°Â¾±²Ô»å²ú²µÈëÃÅ
Ïþ·æ ³Â
?
Java Crash·ÖÎö£¨2012-05-10£©
Java Crash·ÖÎö£¨2012-05-10£©
Kris Mok
?
»ùÓÚOracle/Sun JDKÓëOpenJDKÔÚLinuxÉϵÄcrashµÄ¼¸¸ö°¸Àý·ÖÎö
Aswan&hump
Aswan&hump
wang hongjiang
?
±á²¹»å´Ç´Ç±èѧϰ×ܽá
±á²¹»å´Ç´Ç±èѧϰ×ܽá
ordinary2012
?
Lua gc´úÂë
Lua gc´úÂë
Wei Sun
?
realtime-twitter-search
realtime-twitter-search
ÑǾü Íô
?
Effective linux.3.(diagnosis)
Effective linux.3.(diagnosis)
wang hongjiang
?
΢²©ÊµÊ±ËÑË÷
΢²©ÊµÊ±ËÑË÷
ÑǾü Íô
?
Effective linux.1.(commandline)
Effective linux.1.(commandline)
wang hongjiang
?
³§³ó±ð±ô±ô,ÐźÅÁ¿ÒÔ¼°Âá²¹±¹²¹½ø³ÌµÄÍ˳ö
³§³ó±ð±ô±ô,ÐźÅÁ¿ÒÔ¼°Âá²¹±¹²¹½ø³ÌµÄÍ˳ö
wang hongjiang
?
Sun jdk 1.6 gc
Sun jdk 1.6 gc
bluedavy lin
?
°Â¾±²Ô»å²ú²µÈëÃÅ
°Â¾±²Ô»å²ú²µÈëÃÅ
Ïþ·æ ³Â
?
Java Crash·ÖÎö£¨2012-05-10£©
Java Crash·ÖÎö£¨2012-05-10£©
Kris Mok
?
Similar to ´³²¹±¹²¹À¬»øÊÕ¼¯ÔÀí
(14)
Sun jdk-1.6-gc
Sun jdk-1.6-gc
Èñ ÕÅ
?
Java GC Tuning
Java GC Tuning
pprun
?
chinese edi
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª
bluedavy lin
?
¹ó±ô²¹²õ³óÓ¦ÓóÌÐòµÄÄÚ´æ¹ÜÀí»úÖÆºÍÓÅ»¯·½·¨
¹ó±ô²¹²õ³óÓ¦ÓóÌÐòµÄÄÚ´æ¹ÜÀí»úÖÆºÍÓÅ»¯·½·¨
¹ó³¢´¡³§±á¿ª·¢Õß½»Á÷»á
?
´³³Õ²ÑÄÚÈݹÜÀíºÍÀ¬»ø»ØÊÕ
´³³Õ²ÑÄÚÈݹÜÀíºÍÀ¬»ø»ØÊÕ
Tony Deng
?
ÓÉͬÊÂÀÏÂÞ·ÖÏí
´³±¹³¾ÄÇЩÊÂ
´³±¹³¾ÄÇЩÊÂ
dynamiclu
?
½²³öÀ´£¬ÊÇ×îºÃµÄѧϰ
´³³Õ²Ñ¼°Æäµ÷ÓÅ
´³³Õ²Ñ¼°Æäµ÷ÓÅ
zhongbing liu
?
1.ÔõôÔËÐУ¿±àÒë×°ÔØÖ´ÐлúÖÆ 2.ÔõôÅäÖã¿JVMÄÚ´æ·Ö´ú 3.ÔõôÅäÖã¿GCÀ¬»ø»ØÊÕ 4.Ôõô¼à²â£¿JVM¼à²â¹¤¾ß 5.Ôõô¼à²â£¿Linux¼à²â¹¤¾ß 6.Ôõôµ÷ÓÅ£¿ÄÚ´æµ÷ÓÅ
´³±¹³¾ÄÚ´æ¹ÜÀí»ù´¡
´³±¹³¾ÄÚ´æ¹ÜÀí»ù´¡
wang hongjiang
?
´³²¹±¹²¹ÄÚ´æ¹ÜÀíÎÊÌâ°¸Àý·ÖÏí
´³²¹±¹²¹ÄÚ´æ¹ÜÀíÎÊÌâ°¸Àý·ÖÏí
bluedavy lin
?
·ÖÏí´³²¹±¹²¹ÄÚ´æ¹ÜÀíÖг£¼ûµÄÈýÖÖÎÊÌâµÄ°¸ÀýÒÔ¼°½â¾ö·½·¨¡£ 1¡¢java.lang.OutOfMemoryError 2¡¢Full GCƵ·± 3¡¢CMS GC³öÏÖpromotion failed»òconcurrent mode failure¡£
ʵսHotSpot JVM GC
ʵսHotSpot JVM GC
digitalsonic
?
Õë¶ÔHotSpot JVM GCÏà¹ØµÄÄÚÈÝ£¬°üÀ¨JVMÄÚ´æ»®·Ö¡¢JVM·ÖÎöÏà¹Ø¹¤¾ß¡¢ÃüÁîÐг£ÓòÎÊý¡¢HotSpot GC²ßÂÔ¡¢ÓÅ»¯°¸Àý·ÖÎöºÍÓÅ»¯½¨ÒéµÈ¡£
Sun jdk 1.6ÄÚ´æ¹ÜÀí -µ÷ÓÅÆª-±ÏÐþ
Sun jdk 1.6ÄÚ´æ¹ÜÀí -µ÷ÓÅÆª-±ÏÐþ
Èñ ÕÅ
?
´³´¡³Õ´¡ÄÚ´æÐ¹Â©¼°Õï¶Ï
´³´¡³Õ´¡ÄÚ´æÐ¹Â©¼°Õï¶Ï
ivannotes
?
Óйش³²¹±¹²¹ÄÚ´æÐ¹Â©µÄÒ»¸öÀý×Ó
Java trouble shooting
Java trouble shooting
Min Zhou
?
Garbage collection
Garbage collection
Kim Leo
?
Introduction to garbage collection
Sun jdk-1.6-gc
Sun jdk-1.6-gc
Èñ ÕÅ
?
Java GC Tuning
Java GC Tuning
pprun
?
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª
Sun jdk 1.6ÄÚ´æ¹ÜÀí -ʹÓÃÆª
bluedavy lin
?
¹ó±ô²¹²õ³óÓ¦ÓóÌÐòµÄÄÚ´æ¹ÜÀí»úÖÆºÍÓÅ»¯·½·¨
¹ó±ô²¹²õ³óÓ¦ÓóÌÐòµÄÄÚ´æ¹ÜÀí»úÖÆºÍÓÅ»¯·½·¨
¹ó³¢´¡³§±á¿ª·¢Õß½»Á÷»á
?
´³³Õ²ÑÄÚÈݹÜÀíºÍÀ¬»ø»ØÊÕ
´³³Õ²ÑÄÚÈݹÜÀíºÍÀ¬»ø»ØÊÕ
Tony Deng
?
´³±¹³¾ÄÇЩÊÂ
´³±¹³¾ÄÇЩÊÂ
dynamiclu
?
´³³Õ²Ñ¼°Æäµ÷ÓÅ
´³³Õ²Ñ¼°Æäµ÷ÓÅ
zhongbing liu
?
´³±¹³¾ÄÚ´æ¹ÜÀí»ù´¡
´³±¹³¾ÄÚ´æ¹ÜÀí»ù´¡
wang hongjiang
?
´³²¹±¹²¹ÄÚ´æ¹ÜÀíÎÊÌâ°¸Àý·ÖÏí
´³²¹±¹²¹ÄÚ´æ¹ÜÀíÎÊÌâ°¸Àý·ÖÏí
bluedavy lin
?
ʵսHotSpot JVM GC
ʵսHotSpot JVM GC
digitalsonic
?
Sun jdk 1.6ÄÚ´æ¹ÜÀí -µ÷ÓÅÆª-±ÏÐþ
Sun jdk 1.6ÄÚ´æ¹ÜÀí -µ÷ÓÅÆª-±ÏÐþ
Èñ ÕÅ
?
´³´¡³Õ´¡ÄÚ´æÐ¹Â©¼°Õï¶Ï
´³´¡³Õ´¡ÄÚ´æÐ¹Â©¼°Õï¶Ï
ivannotes
?
Java trouble shooting
Java trouble shooting
Min Zhou
?
Garbage collection
Garbage collection
Kim Leo
?
´³²¹±¹²¹À¬»øÊÕ¼¯ÔÀí
1.
JAVA À¬»øÊÕ¼¯ÔÀí @gongyin
[email_address]
2.
?
3.
¡° Garbage collection
?( GC ) is a form of automatic? memory management . The? garbage collector , or just? collector , attempts to reclaim? garbage , or memory occupied by? objects ?that are no longer in use by the? program ¡± - Wikipedia
4.
×Ô¶¯ÄÚ´æ¹ÜÀíÄê´ú »¹ÓбØÒªÑ§Ï°ºÍÁ˽â GC
£¿
5.
À¬»øÊÕ¼¯Æ÷×öʲô£¿ ÊÍ·Å·Ç´æ»î¶ÔÏóÕ¼¾ÝµÄÄÚ´æ¿Õ¼ä ¹ÜÀíÄڴ棬¾ö¶¨ÁËÄÚ´æ·ÖÅä»úÖÆ
6.
À¬»øÊÕ¼¯Æ÷ÈçºÎ×ö£¿ ¼ì²â³öÀ¬»ø¶ÔÏó Ö±½Ó·½Ê½£ºÒýÓüÆÊý
¼ä½Ó·½Ê½ : ×·×Ù¶ÔÏóÒýÓÃͼ »ØÊÕÀ¬»ø¶ÔÏóËùÕ¼ÓõÄÄÚ´æ¿Õ¼ä Ö±½ÓÇå³ý ѹËõ ¿½±´ ±ØÐë¾ö¶¨Ê²Ã´Ê±ºò½øÐлØÊÕ
7.
À¬»øËã·¨µÄ»ù±¾ÒªÇó ±ØÐëÊǰ²È«µÄ£¬´æ»îÊý¾Ý²»Äܱ»´íÎó»ØÊÕ Ó¦¸ÃÊÇÈ«ÃæµÄ£¬À¬»ø¶ÔÏó»áÔڹ̶¨µÄÊÕ¼¯ÖÜÆÚ±»»ØÊÕ
Ó¦¸ÃÓкÏÀíµÄ¿ªÏú£¬Ê±¼ä / ¿Õ¼ä / ÔËÐÐÆµÂÊ ¾¡¿ÉÄÜÉÙµÄÄÚ´æË鯬 Ó¦¸ÃÊÇ¿ÉÀ©Õ¹µÄ£¬²»»á³ÉΪ¿ÉÀ©Õ¹Æ¿¾±
8.
³£ÓÃµÄ GC Ëã·¨ºÍ²ßÂÔ
ÒýÓüÆÊýÆ÷£¨½¥½øÊ½£© ±ê¼Ç - ÇåɨÀ¬»øÊÕ¼¯ ½Úµã¸´ÖÆÀ¬»øÊÕ¼¯ ±ê¼Ç - Ëõ²¢À¬»øÊÕ¼¯ ·Ö´úÀ¬»øÊÕ¼¯ ²¢·¢À¬»øÊÕ¼¯ ·Ö²¼Ê½À¬»øÊÕ¼¯ ×ÔÊÊÓ¦¶¯Ì¬À¬»øÊÕ¼¯
9.
ÒýÓüÆÊýÆ÷ Pros ʵÏÖ¼òµ¥£¬ÄÜ¿ìËÙÅж϶ÔÏóÊÇ·ñÔÚʹÓÃ
½»Ö¯ÔÚ³ÌÐòÖÐÖ´ÐУ¬²»»á¹ÒÆðÓ¦Óà Cons ÎÞ·¨´¦ÀíÑ»·ÒýÓà ¸ø³ÌÐòÖ´ÐдøÀ´¶îÍâµÄ¿ªÏú ÓëÓû§³ÌÐò½ôÃܵÄñîºÏ
10.
±ê¼Ç - ÇåɨËã·¨
Pros ·Ç³£×ÔÈ»µÄ´¦Àí»·Ðνṹ ²Ù×ÝÖ¸ÕëûÓжîÍâµÄ ¿ªÏú Cons Í£Ö¹ - Æô¶¯ Ëã·¨£¬ STW ÎÊÌâ ÄÚ´æË鯬ÎÊÌâ ½¥½ø¸´ÔÓ¶ÈÕý±ÈÓë¶ÑµÄ´óС
11.
½Úµã¸´ÖÆËã·¨ Scavenger ÇåµÀ·ò£¬´ÓÀ¬»øÖмñÆðÓмÛÖµµÄ²¢´ø×ß
Pros ËùÓдæ»îµÄÊý¾Ý¶¼Ëõ²¢µÄÅÅÁÐÔÚÒ»Æð ÎÞÄÚ´æË鯬£¬Äܹ»¸ßЧµÄ·ÖÅä¶ÔÏó Cons ʹÓÃÁ½¸ö°ëÇø£¬´æ´¢ÈÝÁ¿¼Ó±¶ ÖØ¸´¿½±´ ÐÔÄÜËæ×ÅÄÚ´æÕ¼ÓÃÂÊÌá¸ß¶øÏ½µ£¬¸´ÔÓ¶ÈÕý±ÈÓÚ´æ»îÊý¾Ý½á¹¹µÄ´óС£¬¶ø²»ÊǶѵĴóС
12.
±ê¼Ç - Ëõ²¢Ëã·¨
Ëõ²¢·½Ê½ ÈÎÒâµÄ / ÏßÐ﵀ / »¬¶¯µÄ Pros ²»ÐèÒªÕ¼ÓöîÍâ¿Õ¼ä Cons Ëõ²¢´øÀ´ÐÔÄÜËðʧ ½¥½ø¸´ÔÓ¶ÈÀàËÆÓë½Úµã¸´ÖÆËã·¨
13.
·Ö´úʽÀ¬»øÊÕ¼¯Æ÷ Weak generational
hypothesis ÀíÂÛ ´ó²¿·Ö¶ÔÏó¶¼ÊǶÌÔݵģ¬ÉúÃüÖÜÆÚºÜ¶Ì Ö»ÓкÜÉٵij¤ÉúÃü¶ÔÏó»áÒýÓöÌÉúÃü¶ÔÏó °Ñ¹¤×÷¼¯ÖÐÔÚ»ØÊÕ×îÓпÉÄÜÊÇÀ¬»øµÄ¶ÔÏóÉÏ Pros ²»Í¬µÄ·Ö´ú¿ÉÒÔʹÓò»Í¬µÄËã·¨ºÍ²»Í¬µÄËѼ¯ÆµÂÊ£¬ÄܼõÉÙÀ¬»øÊÕ¼¯µÄÕûÌ忪Ïú Cons Èç¹û¸ù¼¯ºÏ¾Þ´ó ·Ö´ú¼äÒýÓà ÒÔ¼° ռλÀ¬»ø ÎÊÌâ
14.
·Ö´úʽÀ¬»øÊÕ¼¯Æ÷ ÐèÒªºÏÀíÉèÖÃ
ÌáÉý²ßÂÔ ºÍ ÌáÉý·§Öµ ÌáÉýÌ«¿ì Major GC ռλÀ¬»ø ºÍ ±Ó»¤ÏÖÏó ³ÌÐòµÄ¾Ö²¿ÐÔÓиºÃæÓ°Ï죬¹¤×÷¼¯Ï¡Êè Ôö´óдÀ¹½ØÆ÷µÄ¿ªÏú ×ÔÊÊÓ¦ÌáÉý²ßÂÔ ÔÚËõ¶ÌÖжÏʱ¼äºÍռλÀ¬»øÖ®¼ä½øÐÐÕÛÖÔ µ÷¶È²ßÂÔ Òþ²ØÔÚÓû§×î²»×¢Ò⵽ʱ¿Ì ×î¶àÀ¬»øÊ±´¥·¢
15.
½¥½øÊ½ºÍ²¢·¢ÊÕ¼¯Æ÷ ÈýÉ«±ê¼Ç
ÒÑ·ÃÎÊ \ ÐèÖØ·ÃÎÊ \ δ·ÃÎÊ Pros ´ó·ùËõ¶ÌÀ¬»øÊÕ¼¯´øÀ´µÄÖжÏʱ¼ä Cons ÍÌÍÂÁ¿£¬À¬»øÊÕ¼¯×ܺÄʱÉÏÉý ¡° ¶à¸ö¶Á£¬¶à¸öд¡±Ò»ÖÂÐÔÎÊÌ⣬ÐèÒªºÍÓû§³ÌÐòͬ²½£¬Æ¯¸¡À¬»øÎÊÌâ ÐèÌáǰ½øÐÐÊÕ¼¯£¬¿ÉÄܲ¢·¢ÊÕ¼¯Ê§°Ü
16.
×ÔÊÊÓ¦À¬»øÊÕ¼¯Ëã·¨ ¼àÊÓ·þÎñÆ÷ºÍÓ¦ÓÃÇé¿ö£¬×Ô¶¯µ÷ÕûºÍÑ¡ÔñºÏÊʵÄÊÕ¼¯Ëã·¨ JAVA
ÖÐµÄ Eronomic
17.
Java »ùÓÚ·Ö´ú²ßÂÔ Ã¿¸ö·Ö´ú¿ÉÒÔʹÓò»Í¬µÄÀ¬»øÊÕ¼¯Æ÷
18.
Java »ùÓÚ·Ö´úÀ¬»øÊÕ¼¯²ßÂÔ
19.
Java ÖÐÈçºÎ¼ì²âÀ¬»ø¶ÔÏóµÄ£¿ ÕÒµ½
GC Root ¼¯ºÏ ±¾µØ±äÁ¿ºÍ¾Ö²¿±äÁ¿ÒýÓõĶÔÏó ·½·¨ÇøÖÐÀྲ̬ÊôÐÔÒýÓõĶÔÏó ·½·¨ÇøÖг£Á¿ÒýÓõĶÔÏó ±¾µØ·½·¨Õ»ÖÐ JNI ËùÒýÓõĶÔÏó ¿ç·ÖÇøÒýÓõĶÔÏ󣬷ִú¼äÒýÓà ÒýÓöÔÏó±»ÌáÉý ±»ÖØÐ¸³ÖµÖ¸ÏòÐÂÉú·Ö´ú¶ÔÏó
20.
Java ÖÐÈçºÎ¼ì²âÀ¬»ø¶ÔÏóµÄ£¿ дÀ¹½ØÆ÷
Write-barrier Dirty Card JVM ά»¤Ò»¸ö dirty cards ±í ÿ 512 byte ÄÚ´æÒ³¹ØÁªµ½Ò»¸ö dirty card ÄÚ´æÒ³·¢Éú±ä»¯£¬Ôò±ê¼Ç dirty page GC Íê³É£¬ÖØÉè dirty card Snapshot-at-the-beginning (SATB) G1
21.
Java ÖÐÈçºÎ¼ì²âÀ¬»ø¶ÔÏóµÄ£¿ ¸ù¾Ý¶ÔÏó´æ»î״̬£¨
Reachable £©±ê¼Ç³öÀ¬»ø¶ÔÏó Ç¿ÒýÓà ÈíÒýÓ㨠SoftReference £© -XX:SoftRefLRUPolicyMSPerMB ÈõÒýÓà (WeakReference) ¿É¸´»î¶ÔÏó ±» finalize ·½·¨¸´»î ( ÐèÁ½±éɨÃè ) ÐéÒýÓà (PhantomReference) ¶ÔÏó±»»ØÊÕʱµÃµ½ÏµÍ³Í¨Öª¡¡ ReferenceQueue ²»¿É´ï¶ÔÏó
22.
À¬»øÇåɨ½×¶Î Êͷű»Õ¼ÓõÄÀ¬»ø ·ÇѹËõ£¬Ö±½ÓÊÍ·Å
ÇåµÀ·ò¸´ÖÆ »¬¶¯Ëõ²¢
23.
жÔÏó·ÖÅä Ö±½Ó·ÖÅäÔÚÐÂÉú´ú Eden
»ò TLAB TLAB thread local allocation block -XX:+PrintTLAB -XX:+UseTLAB -XX:+ResizeTLAB -XX:TLABSize=<size> -XX:MinTLABSize=<size> ´ó¶ÔÏóºÍ´óÊý×éÖ±½Ó·ÖÅÉÔÚ¾ÉÉú´ú -XX:PretenureSizeThreshold= n Èç¹û¶ÔÏó´óÓÚ Eden ´óС ¶ÑÍâ·ÖÅä DirectByteBuffer Unsafe.allocateMemory -XX:MaxDirectMemorySize=<value>
24.
¶ÔÏóÌáÉý²ßÂÔ -XX:+AlwaysTenure
£¬Ö±½Ó´ÓÐÂÉú´úµ½¾ÉÉú´ú Survivor ÇøÓòÂúºó£¬ÆäËû´æ»î¶ÔÏóÌáÉý ¶ÔÏóÒѾ´æ»îÒ»¶¨´ÎÊýµÄÊÕ¼¯ÖÜÆÚ ¨C XX:MaxTenuringThreshold? ¨C XX:TargetSurvivorRatio
25.
À¬»øÊÕ¼¯Æ÷ÐÔÄܶÈÁ¿Ö¸±ê ÍÌÍÂÁ¿ throughput
ûÓл¨ÔÚ GC ÉϵÄʱ¼ä°Ù·Ö±È£¬±ÈÈç GC »¨ÁË 1% µÄʱ¼ä£¬ÄÇôÍÌÍÂÁ¿ÊÇ 99% GC ¸ºÔØ GC Overhead Í£¶Ùʱ¼ä pause Time ÐÂÉú´úÔÝͣʱ¼ä = ջɨÃèʱ¼ä +DirtyCard ɨÃèʱ¼ä + ¾ÉÉú´úɨÃèʱ¼ä + ´æ»î¶ÔÏó¸³ÖµÊ±¼ä À¬»øÊÕ¼¯Æ÷Ö´ÐÐµÄÆµÂÊ ÄÚ´æ´óС Footprint Ãô½ÝÐÔ Promptness ¶ÔÏó±ä³ÉÀ¬»øºÍ´Ë¿éÄÚ´æ¿ÉÒÔ±»ÀûÓõÄʱ¼ä
26.
Java Ìṩ 4
ÖÖÀàÐ굀 GC Serial Collector ¨C XX :+UseSerialGC Parallel Collector ¨C XX:+UseParallelGC Parallel Compacting Collector(1.5R6) ¨C XX:+UseParallelOldGC CMS Collector ¨C XX:+UseConcMarkSweepGC
27.
´®ÐÐÊÕ¼¯Æ÷ STW ¨C
XX:+UseSerialGC ÐÂÉú´úʹÓô®ÐÐ GC ¾ÉÉú´úºÍ³Ö¾Ã´úҲʹÓô®ÐÐ GC ÊÊÓÃÓÚСÄÚ´æ¿Í»§¶ËÓ¦ÓÃ
28.
²¢ÐÐÊÕ¼¯Æ÷ STW ¨C
XX:+UseParallelGC Parallel ÐÂÉú´úʹÓò¢Ðи´ÖÆÊÕ¼¯Ëã·¨ ¾ÉÉú´úʹÓò¢ÐÐѹËõ mark-sweep-compacting ¨C XX:+UseParallelOldGC ¨C XX:ParallelGCThreads= n
29.
²¢·¢ÊÕ¼¯Æ÷ ¹ý³Ì Initial
mark ,STW, ÊÕ¼¯ GC Roots Õ» ÐÂÉú´ú¶ÔÏóÓ¦ÓþÉÉú´ú¶ÔÏó ËÙ¶ÈÒÀÀµÓÚÐÂÉú´ú´æ»î¶ÔÏóµÄ¶àÉÙ ¨C XX:CMSWaitDuration= n Concurrent Mark £¬±ê¼Ç´æ»î¶ÔÏó Concurrent pre clean, ͳ¼Æ±»¸Ä±äµÄÒýÓà Remark £¬ STW £¬ÖØÐ±ê¼Ç±»¸Ä±äµÄÒýÓà ? ¨C XX:+CMSScavengeBeforeRemark // Ç¿ÖÆÐÂÉú´ú GC Concurrent sweep Concurrent reset
30.
²¢·¢ÊÕ¼¯Æ÷ ¨C XX:+UseConcMarkSweepGC
²»»áѹËõ¶Ñ£¬²»Í¬´óСË鯬Óи÷×﵀ free memory list ¨C XX:+CMSIncrementalMode ¨C XX:ParallelGCThreads=n ºÎʱ´¥·¢ ×îºÃÔÚÐÂÉú´ú GC Ö®ºó ? XX:+UseCMSInitiatingOccupancyOnly = ? XX:+ExplicitGCInvokesConcurrent µ¼Ö Full ¡¡ GC ²¢ÐÐģʽÎÊÌâ Concurrent mode failure ÕýÔÚÖ´ÐÐ CMS £¬µ«ÊÇûÓÐ×ã¹»µÄ¿Õ¼ä·ÖÅ䏸жÔÏó ÌáÉýʧ°ÜÎÊÌâ Promotion failure ÌáÉýµÄ¶ÔÏóÌ«¶à£¬¾ÉÉú´ú·Å²»ÏÂ
31.
²¢·¢ÊÕ¼¯Æ÷ Õë¶Ô¶àºËÓÅ»¯²ÎÊý ?
XX:+CMSConcurrentMTEnabled ²¢·¢½×¶ÎʹÓöàºË ? XX:+ConcGCThreads= ? XX:+ParallelGCThreads= STW ½×¶Î²¢ÐÐÏß³ÌÊýÄ¿£¬Ä¬ÈÏ CPU ÊýÄ¿ ? XX:+UseParNewGC ÐÂÉú´úʹÓò¢Ðи´ÖÆËã·¨ ÏÞÖÆ ¶Ô CPU ×ÊÔ´Ãô¸Ð Ư¸¡À¬»øÎÊÌâ ÄÚ´æË鯬ÎÊÌâ ? XX:+UseCMSCompactAtFullCollection ? XX:+CMSFullGcsBeforeCompaction =
32.
Garbge First G1
£¨ jdk16.R14 £© »ùÓÚ ±ê¼Ç - ѹËõËã·¨ ¿ÉÒÔ¾«×¼µÄ¿ØÖÆÔÝͣʱ¼ä ½« Heap ·ÖΪ¶à¸ö´óСµÄ¶ÀÁ¢ÇøÓò G1 ά»¤ÓÅÏÈÁÐ±í£¬¼ì²âÄĸöÇøÓòÄÚ´æÊ¹ÓÃ×î¿ì£¬È»ºó½ö½öÊÕ¼¯´ËÇøÓò Çå³ý¿ÕÇøÓò´ú¼ÛºÜС ¸´ÖÆÐ¡ÊýÁ¿µÄ¶ÔÏóºÜ¿ì
33.
GC ×éºÏ
Young collector Old collector JVM option Serial (DefNew) Serial Mark-Sweep-Compact -XX:+UseSerialGC Parallel scavenge (PSYoungGen) Serial Mark-Sweep-Compact (PSOldGen) -XX:+UseParallelGC Parallel scavenge (PSYoungGen) Parallel Mark-Sweep-Compact (ParOldGen) -XX:+UseParallelOldGC Serial (DefNew) Concurrent Mark Sweep -XX:+UseConcMarkSweepGC -XX:-UseParNewGC Parallel (ParNew) Concurrent Mark Sweep -XX:+UseConcMarkSweepGC -XX:-UseParNewGC G1 -XX:+UseG1GC
34.
Ergonomics »ùÓÚÆ½Ì¨ºÍ²Ù×÷ϵͳ×Ô¶¯Ñ¡Ôñ collertor
¡¢ heap size ºÍ hotspot client or server Ä¿±êÊÇÌṩ¾¡¿ÉÄܺõÄÐÔÄܶø²»ÐèÒªÉèÖÃÌ«¶àÃüÁî²ÎÊý£¬×Ô¶¯»¯
35.
Behavior-based parallel ×î´óÍ£¶Ùʱ¼ä
-XX £º MaxGCPauseMillis=n ×î´óÍÌÍÂÁ¿ -XX £º GCTimeRatio=n Ratio = 1/ £¨ 1+N £© Default value = 1% ȱʡÓÅÏȼ¶£ºÏÈÂú×ãÍ£¶Ùʱ¼ä£¬È»ºóÍÌÍÂÁ¿£¬×îºó footprint
36.
һЩ³£ÓÃÅäÖà µ¥´¦ÀíÆ÷ϵͳ»òСÄڴ棬 100M
×óÓÒÄÚ´æ -XX:+UseSerialGC ? ? ¶à´¦ÀíÆ÷ϵͳ£¬ÐèÒª×î´óÍÌÍÂÁ¿²»¹ØÐÄÔÝͣʱ¼ä -XX:+UseParallelGc -XX:+UseParallelOldGC ×îСͣ¶Ùʱ¼ä -XX:+UseConcMarkSweepGC -XX:+ParNewGC, ÓÐÄÚ´æË鯬£¬ÄÚ´æÔ½´óÔ½ºÃ ??
37.
ÓÅ»¯ÔÔò Do Nothing,
Èà JVM ×Ô¶¯Ñ¡Ôñ ²»´æÔÚÒ»¸ö¼òµ¥¶øÆÕÊʵÄÔÔò£¬±ØÐë³ä·ÖÀí½âϵͳµÄÐèÇóºÍÌØÕ÷ ÏÈ measure £¬ÔÚ tune ²»Òª¹ý¶È tune ÐèÒªÔÚ¸÷¸öÖ¸±êÖ®¼ä½øÐÐȨºâ
38.
³£ÓÃ¼à¿ØºÍ·ÖÎö¹¤¾ß GC ²ÎÊý
-XX £º +PrintGCDetails -XX: +PrintHeapAtGC -XX £º +PrintGCTimeStamps -XX:+HeapDumpAfterFullGC -XX:+HeapDumpBeforeFullGC -XX:+HeapDumpOnOutOfMemoryError Jmap ¨Chisto | -heap | -permstat Jstat Jconsole VisualVM HAT £º Heap Analysis Tool
39.
References http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html http://java.sun.com/performance/reference/whitepapers
http://www.oracle.com/technetwork/java/faq-140837.html http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html#PerformanceTuning http://blogs.oracle.com/jonthecollector/entry/our_collectors http://java.sun.com/docs/hotspot/VMOptions.html
40.
Thank you
41.
?
42.
?
Download presentation
Your download has started
Download