°Ç°ÇÑ ¼ºñ½º¸¦ À§ÇÑ scouter È°¿ë¹ýÀº ¹°·Ð,±× ¹ÛÀÇ ½Ã½ºÅÛ Àå¾Ö ±Øº¹À» À§ÇÑ ´Ù¾çÇÑ µµ±¸ »ç¿ë¹ýÀ» ¹è¿î´Ù!±â¼úÀÌ ¾Æ¹«¸® ¹ßÀüÇÏ°í ¶Ù¾î³ °³¹ßÀÚ°¡ ÀÖ´õ¶óµµ »ç¶÷ÀÌ ¸¸µç ÇÁ·Î±×·¥Àº ¾ðÁ¦µç Àå¾Ö°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù. ±×·³¿¡µµ »ó´ç¼öÀÇ °³¹ßÀÚ³ª ½Ã½ºÅÛ ¿î¿µÀÚ´Â Æ®·¯ºí½´Æÿ¡ ´ëÇØ ±³À°¹ÞÀ» ±âȸ°¡ ¸¹Áö ¾Ê´Ù. ±×·¡¼ ºü¸£°Ô Àå¾Ö¸¦ ÆľÇÇÏ°í ºÐ¼®ÇÏ¿© Àå¾Ö »óȲÀ» ÇÇÇÏ°í Àç¹ßÀ» ¹æÁöÇÏ´Â µ¥ ÀÛÀº µµ¿òÀÌ µÇ°íÀÚ ÀÌ Ã¥À» ÁغñÇÏ¿´´Ù.
»ï¼ºSDS¿¡¼ °³¹ßÀ» ½ÃÀÛÇÏ¿© NAVER, NHN µîÀÇ È¸»ç¿¡¼ ÀÏÇß´Ù. ¡ºÀÚ¹ÙÀÇ ½Å¡», ¡ºÀÚ¹Ù ¼º´É Æ©´× À̾߱⡻ µî ´Ù¼öÀÇ IT ¼ÀûÀ» ÁýÇÊÇÏ¿´´Ù. Áö±ÝÀº ±¹³» ÃÖ°íÀÇ ½º¸¶Æ® ÅëÇÕ ÁÖÂ÷ ȸ»çÀÎ ÆÄÅ· Ŭ¶ó¿ìµå¿¡¼ °³¹ß ÃÑ°ý ÀÌ»ç·Î ÀÏÇÏ°í ÀÖ´Ù.
PART I ÀÚ¹Ù¿¡¼ ¹ß»ý °¡´ÉÇÑ ¹®Á¦µéCHAPTER 1 ÀÚ¹Ù ±â¹ÝÀÇ ½Ã½ºÅÛ¿¡¼ ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹®Á¦µé 3¾î¶² ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖÀ»±î? 4 ½Ã½ºÅÛÀÌ ´À·Á¿ä 4 ½Ã½ºÅÛ ÀÀ´äÀÌ ¾ø¾î¿ä 6 ¿¹¿Ü°¡ °è¼Ó ¹ß»ýÇØ¿ä 7 ½Ã½ºÅÛÀÌ Á×¾î¿ä 8Àå¾Ö »óȲÀ» Á¾ÇÕÇؼ ´Ù½Ã »ìÆ캸ÀÚ 9 ¹ß»ý °¡´ÉÇÑ º´¸ñ ÁöÁ¡µé 10Á¤¸®Çϸç 12PART II scouter »ìÆ캸±âCHAPTER 2 scouter °³¿ä ¹× ¼³Ä¡ 15APM 15 ´ÙÀ̳ªÆ®·¹À̽º(dynatrace) 16 ¾Û´ÙÀ̳ª¹Í½º(AppDynamics) 17 ´º ·¹¸¯(New Relic) 17 ÀνºÅ¸³ª(instana) 17 ¿ÍÅÇ(whatap) 17 ÀÎÅ͸ƽº(interMax) 18 ÇÉÆ÷ÀÎÆ®(pinpoint) 19scouter 20scouter ±¸¼º ¹× ¹æȺ® ¼³Á¤ 21scouter µ¥¸ð ÇÁ·Î±×·¥ ¼³Ä¡Çϱâ 23Á¤¸®Çϸç 27CHAPTER 3 scouter ¼³Á¤Çϱâ - ¼¹ö ¹× ¿¡ÀÌÀüÆ® 28scouter ´Ù¿î·ÎµåÇϱâ 28scouter ¼¹ö ¼³Á¤Çϱâ 29ÇÑ ´ëÀÇ ¼¹ö¿¡¼ ¿©·¯ °³ÀÇ ¼öÁý ¼¹ö ½ÇÇàÇϱâ 33scouter È£½ºÆ® ¿¡ÀÌÀüÆ® ¼³Á¤Çϱâ 35scouter ÀÚ¹Ù ¿¡ÀÌÀüÆ® ¼³Á¤Çϱâ - ±âÃÊ 36ÀÚ¹ÙÀÇ ClassFileTransformer 38scouter ÀÚ¹Ù ¿¡ÀÌÀüÆ® ¼³Á¤Çϱâ - µ¥¸ó ¸ð´ÏÅ͸µÇϱâ 39Á¤¸®Çϸç 44CHAPTER 4 scouter Ŭ¶óÀ̾ðÆ®¿¡¼ Á¦°øÇÏ´Â ±â´Éµé 45scouter Ŭ¶óÀ̾ðÆ®ÀÇ Á¾·ù 45scouter Ŭ¶óÀ̾ðÆ® ½ÃÀÛÇϱâ 46 Objects â »ìÆ캸±â 46 ¼öÁý ¼¹ö Ãß°¡/»èÁ¦Çϱâ 48 »ç¿ëÇÏÁö ¾Ê´Â ¼¹ö Á¦°ÅÇϱâ 48scouterÀÇ ¸Þ´º 49 File 49 Management 50 Collector 51 Host 52 Object 53 Window 54±×·¡ÇÁ Ãß°¡Çϱâ 55Çʼö ±×·¡ÇÁ ¸ñ·Ï 57 Tomcat/Java Çʼö ±×·¡ÇÁ ¸ñ·Ï 58 ¼¹ö Çʼö ±×·¡ÇÁ ¸ñ·Ï 58±×·¡ÇÁ È®Àιý 59ȸé ÀüȯÇϱâ 60¼¹ö ¹¾î¼ º¸±â 63Á¤¸®Çϸç 67CHAPTER 5 scouter XLog 68XLog »ç¿ë¹ý - ±âÃÊ 68XLog ¸ñ·Ï 71XLog »ç¿ë¹ý - ÇÁ·ÎÆÄÀϸµ 75¸Þ¼µå ÇÁ·ÎÆÄÀϸµ Ãß°¡Çϱâ 78XLog »ç¿ë¹ý - ÇÊÅ͸µ 81XLog »ç¿ë¹ý - °ú°Å µ¥ÀÌÅÍ ºÒ·¯¿À±â 86Á¤¸®Çϸç 88CHAPTER 6 scouter ¼¹ö/¿¡ÀÌÀüÆ® Ç÷¯±×ÀÎ 89¼¹ö Ç÷¯±×ÀÎÀÇ Á¾·ù 89 ºôÆ®ÀÎ Ç÷¯±×ÀÎ 90 ½ºÅ©¸³Æà Ç÷¯±×ÀÎ 91¿¡ÀÌÀüÆ® Ç÷¯±×ÀÎÀÇ Á¾·ù 91 httpservice Ç÷¯±×ÀÎ 92 capture Ç÷¯±×ÀÎ 94Á¤¸®Çϸç 97CHAPTER 7 scouter »ç¿ë ½Ã À¯¿ëÇÑ ÆÁ 98¼öÁý ¼¹öÀÇ µð½ºÅ© »ç¿ë·® ¾ÈÀüÇÏ°Ô °ü¸®Çϱâ 98¾Ë¸² ¼³Á¤Àº Çʼö´Ù 99»ùÇøµµµ Çʼö´Ù 101¸Þ¼µå ÇÁ·ÎÆÄÀϸµµµ Çʼö´Ù 103Á¤¸®Çϸç 104PART III ½º·¹µå Áø´ÜÇϱâCHAPTER 8 ½º·¹µå ¶§¹®¿¡(½º·¹µå¿¡¼) ¹ß»ýÇÏ´Â ¹®Á¦µé 107WASÀÇ ÀûÀýÇÑ ½º·¹µå °³¼ö´Â ¸î °³Àϱî? 107½º·¹µå¿¡¼ ¹ß»ýÇÏ´Â ¹®Á¦ Áß °¡Àå ´ëÇ¥ÀûÀÎ °ÍÀº? 108 ·¹À̽º ÄÁµð¼Ç 109 µ¥µå·Ï 109 ½ºÅ¸º£ÀÌ¼Ç 110 ¶óÀÌºê ·Ï 110 ´Ù¸¥ ÇüÅÂÀÇ ¿¹Ãø ºÒ°¡´ÉÇÑ ¿À·ù 111µ¥µå·Ï ¿¹Á¦ 111·Ï °æÇÕÀ» ÇÇÇÏ´Â 10 + 1°¡Áö ¹æ¹ý 113³¡³ªÁö ¾Ê´Â ·çÇÁ 116 ½º·¹µå °³¼ö ¹®Á¦¿¡ ´ëÇÑ ±ÇÀå¾È 116Á¤¸®Çϸç 118CHAPTER 9 ½º·¹µå ´Ü¸é À߶ó ³õ±â 119½º·¹µå ´Ü¸éÀº ¾ðÁ¦ ÀÚ¸¦±î? 119½º·¹µå ´Ü¸éÀÌ ¹¹±æ·¡ 120½º·¹µå ´Ü¸é ÇغÎÇϱâ 125°¡Àå °£ÆíÇÑ Ctrl+Break¿Í Kill -Quit 131jstackÀ» »ç¿ëÇÏ´Â ¹æ¹ýµµ ÀÖ´Ù 134½º·¹µå ´Ü¸é ÆÄÀÏ·Î ³²±â±â 135Á¤¸®Çϸç 136chapter 10 À߶ó ³õÀº ½º·¹µå ´Ü¸é ºÐ¼®Çϱâ 137ThreadLogic ÁغñÇϱâ 137ThreadLogic »ç¿ëÇϱâ - ½º·¹µå ¸ñ·Ï È®ÀÎ 139ThreadLogic »ç¿ëÇϱâ - Àá°Ü ÀÖ´Â ½º·¹µå È®ÀÎ 142ThreadLogic »ç¿ëÇϱâ - ¹«ÇÑ ·çÇÁ³ª ÀÀ´ä ¾ø´Â ȸé È®ÀÎ 145scouter¸¦ »ç¿ëÇÑ´Ù¸é ½º·¹µå ¸ñ·Ï ȸéÀ» È°¿ëÇÏÀÚ 148scouter¸¦ »ç¿ëÇÑ´Ù¸é Stack Frequency Analyzerµµ È°¿ëÇÏÀÚ 150Á¤¸®Çϸç 153CHAPTER 11 ½º·¹µå ¹®Á¦ Case Study 154½º·¹µå ´Ü¸éÀ¸·Î ¾î¶² ¹®Á¦¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ»±î? 154½Ã½ºÅÛÀÌ ´À¸± ¶§µµ ½º·¹µå¿Í °ü·ÃÀÌ ÀÖÀ»±î? 156½Ã½ºÅÛ ÀÀ´äÀÌ ¾øÀ» ¶§¿¡´Â ½º·¹µå ´Ü¸éÀÌ °¡Àå È¿°úÀûÀÌ´Ù 157¿¹¿Ü°¡ Áö¼ÓÇؼ ¹ß»ýÇÒ ¶§µµ ½º·¹µå ´Ü¸éÀÌ µµ¿òÀÌ µÉ±î? 159»ç·Ê Çϳª. CPU »ç¿ë·®ÀÌ °©Àڱ⠿ö󰡼 ¾È ³»·Á¿Í¿ä 160 »óȲ 160 Á¢±Ù ¹æ¹ý 161»ç·Ê µÑ. ½º·¹µå Ç®ÀÇ ½º·¹µå °³¼ö°¡ °è¼Ó Áõ°¡ÇØ¿ä 162 »óȲ 163 Á¢±Ù ¹æ¹ý 163»ç·Ê ¼Â. ½Ã½ºÅÛ ÀÀ´äÀÌ ¾ø¾î¿ä 165 »óȲ 165 Á¢±Ù ¹æ¹ý 165Á¤¸®Çϸç 167PART IV ¸Þ¸ð¸® Áø´ÜÇϱâCHAPTER 12 ¸Þ¸ð¸® ¶§¹®¿¡ ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹®Á¦µé 171ÀÚ¹ÙÀÇ ¸Þ¸ð¸® ¿µ¿ª 171 pc(program counter) ·¹Áö½ºÅÍ 172 JVM ½ºÅà 172 Èü 172 ¸Þ¼µå ¿µ¿ª 172 ·±Å¸ÀÓ »ó¼ö Ç® 173 ³×ÀÌƼºê ¸Þ¼µå ½ºÅà 173OutOfMemoryError´Â ¾ðÁ¦ ¹ß»ýÇÒ±î? 175OutOfMemoryError ¸Þ½ÃÁöÀÇ ÀÇ¹Ì 176¸Þ¸ð¸® ¸¯ÀÇ ¼¼ Á¾·ù 178 ¼öÆòÀû ¸Þ¸ð¸® ¸¯ 179 ¼öÁ÷Àû ¸Þ¸ð¸® ¸¯ 179 ´ë°¢¼± ÇüÅÂÀÇ ¸Þ¸ð¸® ¸¯ 179OutOfMemoryError ÀÌ¿ÜÀÇ ¸Þ¸ð¸® ¹®Á¦´Â ¾øÀ»±î? 180Á¤¸®Çϸç 181CHAPTER 13 ¸Þ¸ð¸® ´Ü¸é À߶ó ³õ±â 183¸Þ¸ð¸® ´Ü¸éÀº ¾ðÁ¦ ÀÚ¸£³ª? 183jmapÀ¸·Î ¸Þ¸ð¸® ´Ü¸é »ý¼ºÇϱâ 186jmapÀÇ -dump ¿É¼Ç »ç¿ëÇϱâ 190ÀÚµ¿À¸·Î Èü ´ýÇÁ »ý¼º½ÃÅ°±â 193Á¤¸®Çϸç 195CHAPTER 14 À߶ó ³õÀº ¸Þ¸ð¸® ´Ü¸é ºÐ¼®Çϱâ 196¸Þ¸ð¸® ´Ü¸éÀ» ºÐ¼®ÇÏ´Â µµ±¸µé 196MAT ÁغñÇϱâ 197°£´ÜÇÑ ÇÁ·Î±×·¥ÀÇ ¸Þ¸ð¸® ¸¯ ã±â 198MATÀÇ ¶Ç ´Ù¸¥ ±â´Éµé 201 Details 204 Biggest Objects by Retained Size 204 Actions 204 Reports 206 Step by Step 206°´Ã¼ »ó¼¼ Á¤º¸ ¸Þ´º 207°³¹ß PCÀÇ ¸Þ¸ð¸®°¡ ºÎÁ·ÇÒ ¶§ Èü ´ýÇÁ ºÐ¼®ÇÏ´Â ¹æ¹ý 210scouter¸¦ »ç¿ëÇÏ¿© ¸Þ¸ð¸® ¹®Á¦ Áø´ÜÇϱâ 211 GC °ü·Ã 211 Èü °ü·Ã 211Á¤¸®Çϸç 212CHAPTER 15 ¸Þ¸ð¸® ¹®Á¦ Case Study 213¸Þ¸ð¸® ´Ü¸éÀ¸·Î ¾î¶² ¹®Á¦¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ»±î? 213 ½Ã½ºÅÛÀÌ ´À¸®´Ù°í Ç×»ó ¸Þ¸ð¸® ´Ü¸éÀ» »ç¿ëÇÏ´Â °ÍÀº ¾Æ´Ï´Ù 214 ¾ÖÇø®ÄÉÀ̼ÇÀÌ ÀÀ´äÇÏÁö ¾ÊÀ» ¶§µµ ¸Þ¸ð¸®°¡ ¿øÀÎÀÏ ¼ö ÀÖ´Ù 215»ç·Ê Çϳª. ÀÚ²Ù¸¸ ½Ã½ºÅÛÀÌ OOME¸¦ ¹ß»ý½ÃÄÑ¿ä 216 »óȲ 216 Á¢±Ù ¹æ¹ý 216»ç·Ê µÑ. ½Ã½ºÅÛ ÀÀ´äÀÌ ¾ø¾î¿ä 218 »óȲ 218 Á¢±Ù ¹æ¹ý 219Á¤¸®Çϸç 221PART V ÀÚ¹Ù ºÐ¼® µµ±¸CHAPTER 16 ÀÚ¹Ù Á¾ÇÕ ºÐ¼® µµ±¸ÀÎ Arthas 225Arthas¶õ? 225¾Æ¼½º »ç¿ëÇϱâ 226¾Æ¼½º ÁÖ¿ä ¸í·É¾îµé 228 dashboard 229 thread 230 jvm 232 sc/sm 234 monitor 235 stack/trace 236 tt 237Á¤¸®Çϸç 239PART VI ¸®´ª½º Áø´ÜÇϱâCHAPTER 17 ¸®´ª½º ¼º´É Áø´Ü µµ±¸ÀÇ ±¸¼º 243¸®´ª½º Áø´Ü ¸í·É¾î¸¦ ¾Ë¾Æ¾ß ÇÏ´Â ÀÌÀ¯ 243Áø´Ü µµ±¸ ÇÑ´«¿¡ »ìÆ캸±â 24460,000¹Ð¸®ÃÊ¿¡ ¸®´ª½º ½Ã½ºÅÛ ºÐ¼®Çϱâ 245 uptime 246 dmesg | tail 247 vmstat 1 247 mpstat -P ALL 1 248 pidstat 1 248 iostat -xz 1 248 free -m 249 sar -n DEV 1 250 sar -n TCP,ETCP 1 250 top 251Á¤¸®Çϸç 251CHAPTER 18 CPU ¸ð´ÏÅ͸µÇϱâ 252½Ã½ºÅÛÀÇ CPU »ç¿ë·®À» ÇÑ ÁÙ·Î ¸ð´ÏÅ͸µÇÏ´Â µµ±¸µé 252Ãß°¡ÀûÀÎ ½Ã½ºÅÛ ¸ð´ÏÅ͸µ µµ±¸ ¼³Ä¡Çϱâ 253mpstatÀÇ ±âº»ÀûÀÎ »ç¿ë ¹æ¹ý 255 mpstatÀÇ ¿É¼Çµé 257¿Ö CPU¸¦ ¸ð´ÏÅ͸µÇØ¾ß ÇÏ´Â °É±î? 262Á¤¸®Çϸç 263CHAPTER 19 Àü¹ÝÀûÀÎ »óȲ ¸ð´ÏÅ͸µÇϱâ - vmstat¿Í sar 264´ëºÎºÐÀÇ À¯´Ð½º¿Í ¸®´ª½º¿¡ ¼³Ä¡µÇ¾î ÀÖ´Â vmstat 264vmstatÀÇ ±âº»ÀûÀÎ »ç¿ë¹ý 265 vmstatÀÇ ¿É¼Çµé 266 vmstat ¿É¼Ç¿¡ µû¸¥ Ãâ·Â ¿¹ 267vmstatº¸´Ù »ó¼¼ÇÑ Á¤º¸¸¦ ¾Ë ¼ö ÀÖ´Â sar 273sarÀÇ ±âº»ÀûÀÎ »ç¿ë ¹æ¹ý 275 sar ¸í·É¾î ¿É¼Çµé 276Á¤¸®Çϸç 278CHAPTER 20 ÇÁ·Î¼¼½º »óȲ ¸ð´ÏÅ͸µÇϱâ 279ÇÁ·Î¼¼½º ¸ð´ÏÅ͸µÇϱâ 279ÇÁ·Î¼¼½º »çÀÌÀÇ °ü°è ¾Ë¾Æº¸±â 280´©±¸³ª ¾Ë°í ÀÖ´Â ps 283ÇÁ·Î¼¼½ºº°·Î CPU »ç¿ë·® ¸ð´ÏÅ͸µÇϱâ 286ÇÁ·Î¼¼½ºÀÇ ¸Þ¸ð¸® »óȲÀ» È®ÀÎÇÏ´Â pmap 288Á¤¸®Çϸç 291CHAPTER 21 I/O »óȲ ¸ð´ÏÅ͸µÇϱâ 292I/O¸¦ ¸ð´ÏÅ͸µÇÏ´Â µµ±¸¿¡´Â ¾î¶² °ÍÀÌ ÀÖÀ»±î? 292µð½ºÅ©ÀÇ »ç¿ë·®À» ¾Ë¾Æº¸ÀÚ 293iostat¸¦ ¾Ë¾Æº¸ÀÚ 298ÇÁ·Î¼¼½º°¡ »ç¿ë ÁßÀÎ ÆÄÀÏÀº ¾î¶»°Ô È®ÀÎÇÒ±î? 302Á¤¸®Çϸç 306CHAPTER 22 ³×Æ®¿öÅ© »óȲ ¸ð´ÏÅ͸µÇϱâ 307³×Æ®¿öÅ© »óȲÀ» ¸ð´ÏÅ͸µÇÏ´Â µµ±¸¿¡´Â ¾î¶² °ÍÀÌ ÀÖÀ»±î? 307³×Æ®¿öÅ©¸¦ »ç¿ëÇϴ ȯ°æÀÌ ¸ÕÀú ÁغñµÇ¾î¾ß ÇÑ´Ù 308sar·Î ³×Æ®¿öÅ© »ç¿ë·® È®ÀÎÇϱâ 311lsof·Î ¿¬°áµÈ ³×Æ®¿öÅ© Á¤º¸ È®ÀÎÇϱâ 317»ç¶óÁú ³×Æ®¿öÅ© ¸í·É¾îµé 320Á¤¸®Çϸç 321CHAPTER 23 ½Ç½Ã°£À¸·Î ½Ã½ºÅÛ ¸ð´ÏÅ͸µÇϱâ 322´ëºÎºÐÀÇ ¸®´ª½º¿¡ ¼³Ä¡µÇ¾î ÀÖ´Â top 322topÀÇ ´ÜÃàÅ°µé 325topÀÇ ½ÃÀÛ ¿É¼Çµé 329º¸´Ù ¿¹»Ú°í °£ÆíÇÑ htop 331Á¤¸®Çϸç 334CHAPTER 24 scouter·Î ¸®¼Ò½º ¸ð´ÏÅ͸µÇϱâ 335scouter È£½ºÆ® ¿¡ÀÌÀüÆ® È®ÀÎ 335scouter¿¡¼ Á¦°øÇÏ´Â ¸®¼Ò½º ¸ð´ÏÅ͸µ Á¾·ù 336½Ç½Ã°£ ÇÁ·Î¼¼½º ¸ñ·Ï È®ÀÎÇϱâ 337¼ÒÄÏ Á¤º¸ È®ÀÎÇϱâ 338Á¤¸®Çϸç 339PART VII Àå¾Ö Áø´Ü Á¾ÇÕCHAPTER 25 Àå¾Ö Áø´ÜÀº ÀÌ·¸°Ô ÇÑ´Ù 343Áø´Ü ¿äûÀ» ¹Þ¾ÒÀ» ¶§(Àå¾Ö°¡ ³µÀ» ¶§) °¡Àå ¸ÕÀú ÇÒ ÀÏ 343º»°ÝÀûÀÎ Áø´Ü ½ÃÀÛÇϱâ 345Àå¾Ö ¿øÀÎ Á¦°ÅÇÏ°í °á°ú Á¤¸®Çϱâ 348scouter¸¦ »ç¿ëÇÑ Àå¾Ö °¨Áö¿Í ¿øÀÎ ÆÄ¾Ç 353 »ó¾î ÆÐÅÏ 354 Æĵµ ÆÐÅÏ 354 ¤Ñ ¤Ñ ÆÐÅÏ 355 ¿î¼® ³«ÇÏ ÆÐÅÏ 356 »êºÒ ÆÐÅÏ 357 Å©¸®½º¸¶½ºÆ®¸® ÆÐÅÏ 357Á¤¸®Çϸç 358APPENDIX ºÎ·ÏAPPENDIX A Fatal error log ºÐ¼® 361Ä¡¸í ¿¡·¯ ·Î±× ÆÄÀÏ 362 Çì´õ ¼½¼Ç 362 ½º·¹µå Á¤º¸ ¼½¼Ç 367 ÇÁ·Î¼¼½º Á¤º¸ ¼½¼Ç 372 ½Ã½ºÅÛ Á¤º¸ ¼½¼Ç 378Ä¡¸í ¿¡·¯°¡ ¹ß»ýÇÏ¸é ¹¹ºÎÅÍ ºÁ¾ß ÇÒ±î? 379APPENDIX B ÀÚ¹Ù ÀνºÆ®·°¼Ç 381JVM ÀνºÆ®·°¼ÇÀº µµ´ëü ¹»±î? 381ã¾Æº¸±â 387