Á¦°ø : ÇѺû ³×Æ®¿öÅ©
ÀúÀÚ : ÀÌ»óÈ£ / Çѱ¹¹®ÇåÁ¤º¸±â¼ú °³¹ßÆÀ
4. JMeter¸¦ »ç¿ëÇÑ Simple Test
Áö±Ý±îÁö °£·«È÷ JMeterÀÇ Å×½ºÆ® °èȹ¿¡ ´ëÇØ¼ ¾Ë¾Æº¸¾Ò´Âµ¥ º» ¼½¼Ç¿¡¼´Â ¾Õ¿¡¼ ´Ù·ç¾ú´ø Test Plan¿¡ ½ÇÁ¦ ¼ûÀ» ºÒ¾î³Ö¾î º»´Ù.
º»¹®¿¡¼´Â ÀúÀÚ°¡ ¿î¿µÁøÀ¸·Î Ȱµ¿Çϰí ÀÖ´Â Çѱ¹ ¾ÆÆÄÄ¡ »ç¿ëÀÚ ¸ðÀÓ »çÀÌÆ®¸¦ ´ë»óÀ¸·Î »ï¾Ò´Ù. ¿ì¼± HTTP Request ³ëµå¸¦ ¼±ÅÃÇϸé JMeter ÀÇ ¿À¸¥ÂÊ È¸éÀÌ ¹Ù²î¸é¼ [±×¸² 4-1]ó·³ ³ªÅ¸³ª°Ô µÈ´Ù.
[±×¸² 4-1] HTTP Request ¼±ÅÃ
[±×¸² 4-1]¿¡´Â »¡°£ ¹Ú½º°¡ ´Ù¼ö º¸À̴µ¥ ÀÌ ¹Ú½º ¾ÈÀÇ ³»¿ëÀ» ÀÔ·ÂÇϰųª ¼±ÅÃÇÔÀ¸·Î¼ Å×½ºÆ® Á¤º¸¸¦ ÀÔ·ÂÇÑ´Ù.
ù¹øÂ° ÀÔ·ÂÇÒ Á¤º¸´Â Å×½ºÆ®ÇÒ ¼¹öÀÇ IP ¶Ç´Â URLÀ» ÀÔ·ÂÇϴµ¥ URLÀº ÇÁ·ÎÅäÄÝ Á¤º¸¸¦ Á¦¿ÜÇÑ ¼ø¼ö ÁÖ¼Ò¸¸ Àû´Â´Ù. ´ÙÀ½°ú °°Àº URLÀÌ Å×½ºÆ®ÇÒ Á¤º¸¶ó°í º¸°í Server NameÀ» ºÐ¸®ÇÏÀÚ.
http://www.apache-kr.org/www/board.php?cmd=retrieveContent&board_cd=techtalk&rg_d=20080410&rg_seq_n=1&pageID=1&search_gb=&fr_rg_d=&to_rg_d=&searchstring=
Server NameÀº www.apache-kr.org°¡ µÇ¾î¾ß ÇÑ´Ù.
µÎ¹øÂ° ÀÔ·ÂÇÏ°í ¼±ÅÃÇÒ Á¤º¸´Â Method¿Í PathÀε¥ ÀÌ Á¤º¸´Â ½ÇÁ¦·Î Å×½ºÆ®ÇÒ URL Á¤º¸°¡ µé¾î°£´Ù.
Path´Â ½ÇÁ¦ Å×½ºÆ®ÇÒ URLÀ» ¸»Çϴµ¥ / ·ÎºÎÅÍ ½ÃÀÛÇϰí ÀÎÀÚ°¡ ½ÃÀ۵DZâ Àü±îÁöÀÇ Á¤º¸¸¦ Àû´Â´Ù. ¾Õ¿¡¼ ¾ð±ÞµÈ URLÀ» ±âÁØÀ¸·Î path´Â ¾Æ·¡¿Í °°ÀÌ ºÐ¸®µÈ´Ù.
HTTP Request ³ëµåÀÇ Method ±âº»°ªÀº GETÀ̱⠶§¹®¿¡ Ȥ½Ã GETÀÌ ¾Æ´Ï¸é ¼öÁ¤ÇØÁÖµµ·Ï ÇÑ´Ù. Add ¹öưÀ» Ŭ¸¯ÇÏ¸é ÆÄ¶ó¸ÞÅÍ Á¤º¸¸¦ ÀÔ·Â¹Þ°Ô µÈ´Ù.
º»¹®¿¡¼´Â Add ¹öưÀ» 5¹ø ´·¯ ÆÄ¶ó¸ÞÅÍ ÀÔ·ÂÀ» 5°³ ¸¸µé¾ú´Ù. ÀÔ·ÂÇÒ ÆÄ¶ó¸ÞÅÍ´Â ´ÙÀ½ ¸ñ·Ï°ú °°´Ù.
[±×¸² 4-2] Å×½ºÆ® Á¤º¸¸¦ ¸ðµÎ ÀÔ·ÂÇÑ È¸é
HTTP Request Á¤º¸¸¦ ¸ðµÎ ÀÔ·ÂÇß´Ù¸é Thread Group¿¡ °üÇÑ ¼³Á¤À» ÇÒ Â÷·Ê´Ù. JMeterÀÇ ¿ÞÂÊ Æ®¸®¿¡¼ Thread Group ³ëµå¸¦ ¼±ÅÃÇϸé [±×¸² 4-3]°ú °°Àº ȸéÀÌ ³ªÅ¸³´Ù.
[±×¸² 4-3] Thread Group Á¤º¸ ÀÔ·Â
[±×¸² 4-3]¿¡ º¸ÀÌ´Â Thread Group Á¤º¸´Â ¸î°¡Áö ¿¹ÀÇ ÁÖ½ÃÇØ¼ ÀÔ·ÂÇØ¾ß ÇÒ Á¤º¸°¡ ÀÖ´Ù.
ù¹øÂ° ¹Ú½º´Â ¸î ¸íÀÇ »ç¿ëÀÚ·Î µ¿½Ã Á¢¼Ó ºÎÇϸ¦ ÁÙ°ÍÀÎÁö¿¡ ´ëÇÑ °ÍÀε¥ »ç¿ëÀÚ¸íÀ» ³ô°Ô ÁöÁ¤ÇÒ¼ö·Ï ¼¹öÀÇ ºÎÇÏ Å×½ºÆ®µµ ´õ Ä¿Áø´Ù.
µÎ¹øÂ° ¹Ú½º´Â ÇѸíÀÇ »ç¿ëÀÚ°¡ Á¢¼ÓÀÚ°¡ ¼¹ö·Î ºÎÇϸ¦ ÁÖ·¯ ¶°³ª°í ´Ù¸¥ »ç¿ëÀÚ°¡ ºÎÇϸ¦ ÁÖ·¯ ¶°³¯ ¶§ »ç¿ëÀÚ°£ÀÇ Á¢¼Ó ½Ã°£À» ÁöÁ¤ÇÑ´Ù. JMeter ¹®¼¿¡´Â ¾²·¹µåÀÇ »ý¼º Áֱ⸦ ³ªÅ¸³½´Ù°í ÇÏÁö¸¸ ÀÌÇØ¸¦ µ½±â À§Çؼ »ç¿ëÀÚ°£ÀÇ Á¢¼Ó ½Ã°£À¸·Î º¸¸é µÈ´Ù.
¼¼¹øÂ° ¹Ú½º´Â Thread Group¿¡ ¼ÓÇØÀÖ´Â SamplerµéÀ» ¸î¹ø º¸³¾ °ÍÀÎÁö ÁöÁ¤ÇÑ´Ù. ÀÌÇØ°¡ ¾î·Æ´Ù¸é HTTP Request¿¡¼ ÁöÁ¤Çß´ø URLÀ» Loop Count ¿¡ ÁöÁ¤ÇÑ ¼ýÀÚ¸¸Å ´Ù½Ã ¼¹ö¿¡ ¿äûÀ» ÇÑ´Ù°í ÀÌÇØÇÏ¸é µÈ´Ù. ¸¸¾à Forever ¹Ú½º¸¦ üũÇß´Ù¸é JMeter ½ÇÇàÀÚ´Â JMeter¸¦ ¼öµ¿ÀûÀ¸·Î Á¤Áö½ÃÄÑÁà¾ß ÇÑ´Ù.
º»¹®¿¡¼´Â Number of Threads(users)¸¦ 10¸íÀ¸·Î Loop Count´Â 3À¸·Î ¼öÁ¤ÇÏ¿´´Ù. ÀÌ ¼ýÀÚ³ª ¾çÀº Å×½ºÆ® ºÎÇÏ¿¡ µû¶ó ÀûÀýÇÏ°Ô Á¶Á¤ÇØÁÖ¸é µÈ´Ù.
ÀÌÁ¦ ºÎÇÏ Å×½ºÆ®¸¦ ÇØº¼ Â÷·Ê´Ù. ºÎÇÏ Å×½ºÆ®´Â ¸Þ´º¿¡¼ Run > Start¸¦ ¼±ÅÃÇϰųª Ctrl + R ۸¦ ´©¸£¸é Test PlanÀ» ÀúÀåÇÒ °ÍÀÎÁö ¹¯°Ô µÇ°í ¾Æ´Ï¿À(N)À» ´©¸£¸é Å×½ºÆ®¸¦ ½ÃÀÛÇÑ´Ù. ¸¸¾à Test PlanÀÌ ÀúÀåµÇ¾î ÀÖ´Ù¸é ¹Ù·Î ºÎÇÏ Å×½ºÆ®¸¦ ½ÃÀÛÇÏ°Ô µÈ´Ù.
[±×¸² 4-4] Å×½ºÆ® °èȹÀ» ÀúÀåÇϽðڽÀ´Ï±î?
ºÎÇϰ¡ ÁøÇàµÇ´Â Áß¿¡´Â [±×¸² 4-5]¿¡ ÀÖ´Â ³×¸ð ¹Ú½º¿¡ ³ì»öºÒÀÌ µé¾î¿À¸é¼ Å×½ºÆ®¸¦ ½ÃÀÛÇÑ´Ù.
[±×¸² 4-5] ºÎÇϰ¡ ÁøÇàÁßÀΠǥ½Ã
ºÎÇÏ Å×½ºÆ®°¡ ³¡³ª¸é JMeterÀÇ ¿ÞÂÊ Æ®¸®¿¡¼ View Results Tree¸¦ ¼±ÅÃÇÏ¸é ¿À¸¥ÂÊ È¸éÀÌ [±×¸² 4-6] ó·³ ¹Ù²î°Ô µÈ´Ù.
[±×¸² 4-6] View Results Tree
[±×¸² 4-6]°ú °°ÀÌ Å×½ºÆ®ÇÑ °á°ú°¡ Ãâ·ÂµÇ¾ú´Ù¸é Å×½ºÆ®´Â Á¤»óÀûÀ¸·Î ÀÌ·ç¾îÁø °ÍÀÌ´Ù. ÇÏÁö¸¸ Á¾Á¾ ȸé ÁÂÃø¿¡ º¸ÀÌ´Â ÃÊ·Ï»öÀÇ »ï°¢ ¾ÆÀÌÄÜ ¸ð½ÀÀÌ ³ªÅ¸³ªÁö ¾ÊÀ¸¸é ³×Æ®¿öÅ© ¿¬°á ¿À·ù³ª ¼¹öÃø ¿À·ù·Î ÀÎÇØ Å×½ºÆ®ÇÒ ¾ø´Â »óȲÀ¸·Î º»´Ù.
´ÙÀ½ [±×¸² 4-7]Àº Graph Results ³ëµå¸¦ ¼±ÅÃÇÑ °á°úÀÌ´Ù.
[±×¸² 4-7] Graph °á°ú·Î Ç¥½ÃµÈ ºÎÇÏ Å×½ºÆ®
ÀúÀÚ : ÀÌ»óÈ£ / Çѱ¹¹®ÇåÁ¤º¸±â¼ú °³¹ßÆÀ
4. JMeter¸¦ »ç¿ëÇÑ Simple Test
Áö±Ý±îÁö °£·«È÷ JMeterÀÇ Å×½ºÆ® °èȹ¿¡ ´ëÇØ¼ ¾Ë¾Æº¸¾Ò´Âµ¥ º» ¼½¼Ç¿¡¼´Â ¾Õ¿¡¼ ´Ù·ç¾ú´ø Test Plan¿¡ ½ÇÁ¦ ¼ûÀ» ºÒ¾î³Ö¾î º»´Ù.
º»¹®¿¡¼´Â ÀúÀÚ°¡ ¿î¿µÁøÀ¸·Î Ȱµ¿Çϰí ÀÖ´Â Çѱ¹ ¾ÆÆÄÄ¡ »ç¿ëÀÚ ¸ðÀÓ »çÀÌÆ®¸¦ ´ë»óÀ¸·Î »ï¾Ò´Ù. ¿ì¼± HTTP Request ³ëµå¸¦ ¼±ÅÃÇϸé JMeter ÀÇ ¿À¸¥ÂÊ È¸éÀÌ ¹Ù²î¸é¼ [±×¸² 4-1]ó·³ ³ªÅ¸³ª°Ô µÈ´Ù.
[±×¸² 4-1] HTTP Request ¼±ÅÃ
[±×¸² 4-1]¿¡´Â »¡°£ ¹Ú½º°¡ ´Ù¼ö º¸À̴µ¥ ÀÌ ¹Ú½º ¾ÈÀÇ ³»¿ëÀ» ÀÔ·ÂÇϰųª ¼±ÅÃÇÔÀ¸·Î¼ Å×½ºÆ® Á¤º¸¸¦ ÀÔ·ÂÇÑ´Ù.
ù¹øÂ° ÀÔ·ÂÇÒ Á¤º¸´Â Å×½ºÆ®ÇÒ ¼¹öÀÇ IP ¶Ç´Â URLÀ» ÀÔ·ÂÇϴµ¥ URLÀº ÇÁ·ÎÅäÄÝ Á¤º¸¸¦ Á¦¿ÜÇÑ ¼ø¼ö ÁÖ¼Ò¸¸ Àû´Â´Ù. ´ÙÀ½°ú °°Àº URLÀÌ Å×½ºÆ®ÇÒ Á¤º¸¶ó°í º¸°í Server NameÀ» ºÐ¸®ÇÏÀÚ.
http://www.apache-kr.org/www/board.php?cmd=retrieveContent&board_cd=techtalk&rg_d=20080410&rg_seq_n=1&pageID=1&search_gb=&fr_rg_d=&to_rg_d=&searchstring=
Server NameÀº www.apache-kr.org°¡ µÇ¾î¾ß ÇÑ´Ù.
µÎ¹øÂ° ÀÔ·ÂÇÏ°í ¼±ÅÃÇÒ Á¤º¸´Â Method¿Í PathÀε¥ ÀÌ Á¤º¸´Â ½ÇÁ¦·Î Å×½ºÆ®ÇÒ URL Á¤º¸°¡ µé¾î°£´Ù.
Path´Â ½ÇÁ¦ Å×½ºÆ®ÇÒ URLÀ» ¸»Çϴµ¥ / ·ÎºÎÅÍ ½ÃÀÛÇϰí ÀÎÀÚ°¡ ½ÃÀ۵DZâ Àü±îÁöÀÇ Á¤º¸¸¦ Àû´Â´Ù. ¾Õ¿¡¼ ¾ð±ÞµÈ URLÀ» ±âÁØÀ¸·Î path´Â ¾Æ·¡¿Í °°ÀÌ ºÐ¸®µÈ´Ù.
/www/board.phpÀ§¿¡¼ ³ªÅ¸³ ÆÄÀÏÀÌ ¾î¶² ÀÎÀÚ¸¦ ¹Þ´Â´Ù¸é ±× ÀÎÀÚ ¹æ½ÄÀ» Method¿¡¼ ¼±ÅÃÇØÁØ´Ù. ¿©·¯ Method¸¦ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸ À¥ ¾ÖÇø®ÄÉÀ̼ÇÀº ÀϹÝÀûÀ¸·Î GET ¹æ½Ä°ú POST ¹æ½ÄÀ» »ç¿ëÇÑ´Ù. ¿¹Á¦·Î ¾²´Â URLÀº ¸ðµç Á¤º¸¸¦ GET ¹æ½ÄÀ¸·Î ´øÁø´Ù. µû¶ó¼ Method´Â GETÀ¸·Î ÁöÁ¤ÇÑ´Ù. ¹°·Ð ÀÎÀÚ¸¦ ¹ÞÁö ¾Ê´Â´Ù¸é Parameter Á¤º¸¸¦ ÀÔ·ÂÇÏÁö ¾Ê¾Æµµ µÈ´Ù.
HTTP Request ³ëµåÀÇ Method ±âº»°ªÀº GETÀ̱⠶§¹®¿¡ Ȥ½Ã GETÀÌ ¾Æ´Ï¸é ¼öÁ¤ÇØÁÖµµ·Ï ÇÑ´Ù. Add ¹öưÀ» Ŭ¸¯ÇÏ¸é ÆÄ¶ó¸ÞÅÍ Á¤º¸¸¦ ÀÔ·Â¹Þ°Ô µÈ´Ù.
º»¹®¿¡¼´Â Add ¹öưÀ» 5¹ø ´·¯ ÆÄ¶ó¸ÞÅÍ ÀÔ·ÂÀ» 5°³ ¸¸µé¾ú´Ù. ÀÔ·ÂÇÒ ÆÄ¶ó¸ÞÅÍ´Â ´ÙÀ½ ¸ñ·Ï°ú °°´Ù.
cmd board_cd rg_d rg_seq_n pageID¼¹ö Á¤º¸ ¹× ÆÄ¶ó¸ÞÅÍ Á¤º¸¸¦ ¸ðµÎ ÀÔ·ÂÇÑ È¸éÀº [±×¸² 4-2]¿Í °°´Ù.
[±×¸² 4-2] Å×½ºÆ® Á¤º¸¸¦ ¸ðµÎ ÀÔ·ÂÇÑ È¸é
HTTP Request Á¤º¸¸¦ ¸ðµÎ ÀÔ·ÂÇß´Ù¸é Thread Group¿¡ °üÇÑ ¼³Á¤À» ÇÒ Â÷·Ê´Ù. JMeterÀÇ ¿ÞÂÊ Æ®¸®¿¡¼ Thread Group ³ëµå¸¦ ¼±ÅÃÇϸé [±×¸² 4-3]°ú °°Àº ȸéÀÌ ³ªÅ¸³´Ù.
[±×¸² 4-3] Thread Group Á¤º¸ ÀÔ·Â
[±×¸² 4-3]¿¡ º¸ÀÌ´Â Thread Group Á¤º¸´Â ¸î°¡Áö ¿¹ÀÇ ÁÖ½ÃÇØ¼ ÀÔ·ÂÇØ¾ß ÇÒ Á¤º¸°¡ ÀÖ´Ù.
ù¹øÂ° ¹Ú½º´Â ¸î ¸íÀÇ »ç¿ëÀÚ·Î µ¿½Ã Á¢¼Ó ºÎÇϸ¦ ÁÙ°ÍÀÎÁö¿¡ ´ëÇÑ °ÍÀε¥ »ç¿ëÀÚ¸íÀ» ³ô°Ô ÁöÁ¤ÇÒ¼ö·Ï ¼¹öÀÇ ºÎÇÏ Å×½ºÆ®µµ ´õ Ä¿Áø´Ù.
µÎ¹øÂ° ¹Ú½º´Â ÇѸíÀÇ »ç¿ëÀÚ°¡ Á¢¼ÓÀÚ°¡ ¼¹ö·Î ºÎÇϸ¦ ÁÖ·¯ ¶°³ª°í ´Ù¸¥ »ç¿ëÀÚ°¡ ºÎÇϸ¦ ÁÖ·¯ ¶°³¯ ¶§ »ç¿ëÀÚ°£ÀÇ Á¢¼Ó ½Ã°£À» ÁöÁ¤ÇÑ´Ù. JMeter ¹®¼¿¡´Â ¾²·¹µåÀÇ »ý¼º Áֱ⸦ ³ªÅ¸³½´Ù°í ÇÏÁö¸¸ ÀÌÇØ¸¦ µ½±â À§Çؼ »ç¿ëÀÚ°£ÀÇ Á¢¼Ó ½Ã°£À¸·Î º¸¸é µÈ´Ù.
¼¼¹øÂ° ¹Ú½º´Â Thread Group¿¡ ¼ÓÇØÀÖ´Â SamplerµéÀ» ¸î¹ø º¸³¾ °ÍÀÎÁö ÁöÁ¤ÇÑ´Ù. ÀÌÇØ°¡ ¾î·Æ´Ù¸é HTTP Request¿¡¼ ÁöÁ¤Çß´ø URLÀ» Loop Count ¿¡ ÁöÁ¤ÇÑ ¼ýÀÚ¸¸Å ´Ù½Ã ¼¹ö¿¡ ¿äûÀ» ÇÑ´Ù°í ÀÌÇØÇÏ¸é µÈ´Ù. ¸¸¾à Forever ¹Ú½º¸¦ üũÇß´Ù¸é JMeter ½ÇÇàÀÚ´Â JMeter¸¦ ¼öµ¿ÀûÀ¸·Î Á¤Áö½ÃÄÑÁà¾ß ÇÑ´Ù.
º»¹®¿¡¼´Â Number of Threads(users)¸¦ 10¸íÀ¸·Î Loop Count´Â 3À¸·Î ¼öÁ¤ÇÏ¿´´Ù. ÀÌ ¼ýÀÚ³ª ¾çÀº Å×½ºÆ® ºÎÇÏ¿¡ µû¶ó ÀûÀýÇÏ°Ô Á¶Á¤ÇØÁÖ¸é µÈ´Ù.
ÀÌÁ¦ ºÎÇÏ Å×½ºÆ®¸¦ ÇØº¼ Â÷·Ê´Ù. ºÎÇÏ Å×½ºÆ®´Â ¸Þ´º¿¡¼ Run > Start¸¦ ¼±ÅÃÇϰųª Ctrl + R ۸¦ ´©¸£¸é Test PlanÀ» ÀúÀåÇÒ °ÍÀÎÁö ¹¯°Ô µÇ°í ¾Æ´Ï¿À(N)À» ´©¸£¸é Å×½ºÆ®¸¦ ½ÃÀÛÇÑ´Ù. ¸¸¾à Test PlanÀÌ ÀúÀåµÇ¾î ÀÖ´Ù¸é ¹Ù·Î ºÎÇÏ Å×½ºÆ®¸¦ ½ÃÀÛÇÏ°Ô µÈ´Ù.
[±×¸² 4-4] Å×½ºÆ® °èȹÀ» ÀúÀåÇϽðڽÀ´Ï±î?
ºÎÇϰ¡ ÁøÇàµÇ´Â Áß¿¡´Â [±×¸² 4-5]¿¡ ÀÖ´Â ³×¸ð ¹Ú½º¿¡ ³ì»öºÒÀÌ µé¾î¿À¸é¼ Å×½ºÆ®¸¦ ½ÃÀÛÇÑ´Ù.
[±×¸² 4-5] ºÎÇϰ¡ ÁøÇàÁßÀΠǥ½Ã
ºÎÇÏ Å×½ºÆ®°¡ ³¡³ª¸é JMeterÀÇ ¿ÞÂÊ Æ®¸®¿¡¼ View Results Tree¸¦ ¼±ÅÃÇÏ¸é ¿À¸¥ÂÊ È¸éÀÌ [±×¸² 4-6] ó·³ ¹Ù²î°Ô µÈ´Ù.
[±×¸² 4-6] View Results Tree
[±×¸² 4-6]°ú °°ÀÌ Å×½ºÆ®ÇÑ °á°ú°¡ Ãâ·ÂµÇ¾ú´Ù¸é Å×½ºÆ®´Â Á¤»óÀûÀ¸·Î ÀÌ·ç¾îÁø °ÍÀÌ´Ù. ÇÏÁö¸¸ Á¾Á¾ ȸé ÁÂÃø¿¡ º¸ÀÌ´Â ÃÊ·Ï»öÀÇ »ï°¢ ¾ÆÀÌÄÜ ¸ð½ÀÀÌ ³ªÅ¸³ªÁö ¾ÊÀ¸¸é ³×Æ®¿öÅ© ¿¬°á ¿À·ù³ª ¼¹öÃø ¿À·ù·Î ÀÎÇØ Å×½ºÆ®ÇÒ ¾ø´Â »óȲÀ¸·Î º»´Ù.
´ÙÀ½ [±×¸² 4-7]Àº Graph Results ³ëµå¸¦ ¼±ÅÃÇÑ °á°úÀÌ´Ù.
[±×¸² 4-7] Graph °á°ú·Î Ç¥½ÃµÈ ºÎÇÏ Å×½ºÆ®















