·Î±×ÀÎ | ȸ¿ø°¡ÀÔ (´º½º·¹ÅͽÅû) | SITEMAP
   
  °³¹ß   Ç÷§Æû   ½Ã½ºÅÛ   ¸Å´ÏÁö¸ÕÆ®   Àüü±â»ç  
ÀÚ¹Ù
´å³Ý
C/C++
DB
¸ðµ¨¸µ
À¥°³¹ß
±âŸ
À¯´Ð½º/¸®´ª½º
À©µµ¿ì
±âŸ
¼­¹ö
³×Æ®¿öÅ©
º¸¾È
±âŸ
BM
PM
±âŸ
 
±â»çÀúÀå
0
 
¸¶ÀÌ ½ºÅ©·¦
[ÇÁ·¹ÀÓ¿öÅ© Àü·« ¨è] ÇÁ·¹ÀÓ¿öÅ© À̸ÓÀü½ºÀÇ ¹ÌÇÐ

ÃÖ»óÈÆ((ÁÖ)´Ù³¯ ÇØ¿Ü °³¹ßÆÀ ÆÀÀå)   2007/10/05
1ºÎ | ¼º°øÀûÀÎ ÇÁ·ÎÁ§Æ®¸¦ À§ÇÑ ÇÁ·¹ÀÓ¿öÅ©ÀÇ Àç¹ß°ß
2ºÎ | JBOSS ³»ºÎ ±¸Á¶ ºÐ¼®À» ÅëÇÑ ÇÁ·¹ÀÓ¿öÅ© À̸ÓÀü½ºÀÇ ¹ÌÇÐ
3ºÎ | DxFramework¸¦ ÀÌ¿ëÇÑ ´å³Ý ÇÁ·¹ÀÓ¿öÅ© Ȱ¿ë Àü·«
4ºÎ | iBatis¿Í Acegi Securtiy¸¦ ÀÌ¿ëÇÑ ÀÚ¹Ù ÇÁ·¹ÀÓ¿öÅ© Ȱ¿ë Àü·«
5ºÎ | Django¿Í Seaside·Î ¾Ë¾Æº¸´Â ´ë¾È ¾ð¾î ÇÁ·¹ÀÓ¿öÅ© Ȱ¿ë Àü·«
À̸ÓÀü½º¶õ Àüü´Â ºÎºÐÀÇ ÇÕº¸´Ù Å©°Ô µÇ´Â Çö»óÀ» ¸»ÇÑ´Ù. È¥ÀÚ¼­´Â µµÀúÈ÷ ¹ßÈÖÇÒ ¼ö ¾ø´Â °³Ã¼µéÀÌ ÇϳªÀÇ ÇÁ·¹ÀÓ¿öÅ©¿¡ À¶ÇÕµÇ¾î °Å´ëÇÑ, »õ·Î¿î ÈûÀ» ¸¸µå´Â °ÍÀÌ´Ù. ÇÏÁö¸¸ n°³ÀÇ °³Ã¼µéÀÌ ¸ð¿© n°³¸¦ ÃʰúÇÏ´Â ¹«¾ùÀ» ¸¸µé±â¶õ ¾î·Á¿î ÀÏÀÌ´Ù. ±×·³¿¡µµ ºÒ±¸Çϰí JBoss¸¦ ºñ·ÔÇÑ ¿ì¼öÇÑ ÇÁ·¹ÀÓ¿öÅ©µéÀº ÀÌ·¯ÇÑ ±âÀûÀ» ÀÌ·ï³»°í ÀÖ´Ù. ƯÁý 2ºÎ¸¦ ÅëÇØ JBoss¿Í JBoss¸¦ ÀÌ¿ëÇÏ´Â ¾ÖÇø®ÄÉÀ̼ÇÀÌ À̸ÓÀü½º µÇ´Â ¸ð½ÀÀ» ºÐ¼®ÇØ º¸ÀÚ.

ÀÌÁ¦ °³¹ßÀÚ È¥ÀÚ¼­ ÇÁ·Î±×·¥ÀÇ Ã³À½°ú ³¡À» ¸ðµÎ °³¹ßÇÏ´Â ½Ã´ë´Â Áö³µ´Ù. ½Ã½ºÅÛ ¶óÀ̺귯¸®³ª ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼­ Áö¿øÇÏ´Â ¶óÀ̺귯¸®¸¦ Á¦¿ÜÇÏ´õ¶óµµ, ¿ì¸®´Â °¢Á¾ ÄÚµå »ùÇÃ, À¯Æ¿¸®Æ¼ ¶óÀ̺귯¸®, ¹Ìµé¿þ¾î ¼­ºñ½º, ÇÁ·¹ÀÓ¿öÅ© µîÀ» ÀÌ¿ëÇÏ¿© ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÑ´Ù.

¾îÂ÷ÇÇ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÇ Ã¶ÇÐÀº Àç»ç¿ë °¡´ÉÇÑ °ÍµéÀ» ÀÌ¿ëÇÏ¿© ±× ÀÌ»óÀÇ ºÎ°¡°¡Ä¡¸¦ âÁ¶ÇÏ´Â ÀÛ¾÷ÀÌ´Ù. µû¶ó¼­ ÀÌ¹Ì °³¹ßµÈ ǰÁú ÁÁÀº ÇÁ·Î´öÆ®µéÀ» ÀÌ¿ëÇÔÀ¸·Î½á »ý»ê¼ºÀ» ³ôÀÌ´Â ÀÏÀº °³¹ßÀÚÀÇ ¼÷¸íÀÌ µÈ ¼ÀÀÌ´Ù.

»ç½Ç ÇÊÀÚ´Â ÀÌ ¡®¼÷¸í¡¯ÀÌ ºÒÆíÇÏ´Ù. ±â¼úÀûÀ¸·Î ¸Å·ÂÀûÀÎ ºÎºÐµéÀº ÀÌ¹Ì ¿ÀǼҽº³ª »ó¿ë ¼Ö·ç¼ÇÀ¸·Î Á¦°øµÇ°í ÀÖ´Â Å¿ÀÌ´Ù. ¶ÇÇÑ ÀÌ¹Ì ¸¸µé¾îÁø ÇÁ·Î´öÆ®¸¦ ¡®¼Òºñ¡¯ÇÏ¿© °³¹ßÇØ¾ß ÇÏ´Â ºñÁî´Ï½º ¾ÖÇø®ÄÉÀÌ¼Ç ÀϺ¯µµÀÇ ¿ì¸®³ª¶ó °³¹ß ÁöÇüÀÌ °³¹ßÀÚ°¡ ±â¼úÀûÀ¸·Î ´õ ¿¬±¸ °³¹ß ÇÒ ±âȸ¸¦ ¹ÚÅ»Çϱ⠶§¹®ÀÌ´Ù.

¿øÃµ ±â¼úÀÇ »ý»êÀº ¿Ü±¹¿¡¼­ÇÏ°í ¿ì¸®³ª¶ó´Â ´ÜÁö ±× ±â¼úÀ» ¼Òºñ¿Í °¡°øÀ» ÅëÇØ ÁøÇàÇϱ⸸ ÇÏ´Â ÇÁ·ÎÁ§Æ® ȯ°æÀÌ ºÒÆíÇÏ´Ù. °á°úÀûÀ¸·Î Çѱ¹¿¡¼­ ´ëºÎºÐÀÇ ÇÁ·ÎÁ§Æ®¿¡´Â ±â¼úÀÇ ½ÉÃþÀ» Àß ÀÌÇØÇÏ´Â ¿£Áö´Ï¾îº¸´Ù ÀÌ¹Ì ¸¸µé¾îÁø ¶óÀ̺귯¸®¸¦ Àß ÀÌÇØÇÏ°í ´Ù·ê ¼ö ÀÖ´Â, Áï »ý»ê·ÂÀ» °¡Áø °³¹ßÀÚ¸¦ ¿ä±¸Çϰí ÀÖ´Ù.

ÀÌ·± ¹®Á¦¸¦ ÇØ°áÇÒ ´ë¾ÈÀ¸·Î ¿ÀǼҽº °³¹ßÀ» ÅëÇØ ±â¼úÀûÀÎ ¿å±¸¿Í ¿¬±¸¸¦ ÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ ÇÊÀÚÀÇ ¼Ò°ßÀÌ´Ù.

  ÇÁ·¹ÀÓ¿öÅ©ÀÇ À̸ÓÀü½ºÇÑ Ãø¸é

¿äÁò ÇÊÀÚ´Â ÇÁ·¹ÀÓ¿öÅ©¸¦ º¼ ¶§ À̸ÓÀü½º(â¹ß)¶õ °³³äÀÌ ¶°¿À¸¥´Ù. ¾Õ¼­ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ ÇÁ·¹ÀÓ¿öÅ©¸¦ ÀÌ¿ëÇÔÀ¸·Î½á ´õ¿í ¿Ï¼ºµÈ, »õ·Î¿î ºÎ°¡°¡Ä¡ÀÇ ¾ÖÇø®ÄÉÀ̼ÇÀ» âÁ¶ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. À̰ÍÀº À̸ÓÀü½º¿¡¼­ ¡®Àüü´Â ºÎºÐÀÇ ÇÕº¸´Ù Å©´Ù¡¯´Â ¸íÁ¦¿¡ Ãæ½ÇÇÏ´Ù.

ÇÁ·¹ÀÓ¿öÅ©¸¦ Àß È°¿ëÇϸé 1+1ÀÇ °á°ú°¡ 2¸¦ ÃʰúÇÏ´Â È¿°ú¸¦ ³º´Â´Ù. ¶ÇÇÑ JBoss³ª ½ºÇÁ¸µ(spring), ÇÏÀ̹ö³×ÀÌÆ®(Hibernate) °°Àº Å« ÇÁ·¹ÀÓ¿öÅ©ÀÇ ³»ºÎ¸¦ º¸¸é À̵鵵 ´Ù¸¥ ÇÁ·¹ÀÓ¿öÅ©µéÀ» Á¶ÇÕÇÏ¿© À̸ÓÀü½º µÇ´Â Çö»óÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.

È¥ÀÚ¼­´Â µµÀúÈ÷ ¹ßÈÖÇÒ ¼ö ¾ø´Â ¿¡³ÊÁöµéÀÌ ÇϳªÀÇ ÇÁ·¹ÀÓ¿öÅ©¿¡ À¶ÇÕµÇ¾î °Å´ëÇÑ, »õ·Î¿î ÈûÀ» ¸¸µé¾î ³»´Â °ÍÀÌ´Ù. ÀÌ °³³äÀº »ç½ÇÀº ±×´ÙÁö »ý°æÇÑ °Íµµ ¾Æ´Ï´Ù.

À¥ 2.0¿¡¼­ÀÇ ¸Å½¬¾÷(mash-up)À̳ª ½Ã³ÊÁö È¿°úµµ °°Àº Ãø¸éÀ» °®°í ÀÖ´Ù. ¡®¾ÖÇø®ÄÉÀ̼Ç+ÇÁ·¹ÀÓ¿öÅ©¡¯ÀÇ °ü°è¿¡¼± µÎ °³ ÀÌ»óÀÇ Á¶ÇÕÀÌ °¡´ÉÇÏÁö¸¸, ÇÁ·¹ÀÓ¿öÅ© ³»ºÎ¿¡¼± ±×°Í°ú ºñ±³ÇÒ ¼ö ¾øÀ» ¸¸Å­ÀÇ ¸¹Àº ¼­ºê ÇÁ·¹ÀÓ¿öÅ©µéÀÇ Á¶ÇÕÀ¸·Î ±¸¼ºµÈ´Ù. Áï, ±× ¸¸Å­ÀÇ »óÈ£ÀÛ¿ëÀ¸·Î À̸ÓÀü½º°¡ ÀÌ·ïÁø´Ù´Â °ÍÀÌ´Ù.

½ÇÁ¦·Î ÀÌ·± ÇÁ·¹ÀÓ¿öÅ©¸¦ ´Ù¿î·Îµå ¹Þ¾Æ lib Æú´õ¸¦ ¿­¾úÀ» ¶§ »ó´çÈ÷ ¸¹Àº jar ÆÄÀϵéÀ» º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. À̸ÓÀü½º¶õ ±¸¼º ¿ä¼Ò¿¡ ¾ø´Â Ư¼ºÀ̳ª ÇൿÀÌ »óÀ§°èÃþ(Àüü±¸Á¶)¿¡¼­ µ¹¿¬È÷ Ã⿬ÇÏ´Â Çö»óÀ» ¸»ÇÑ´Ù.

n°³ÀÇ ¿¡³ÊÁöµéÀÌ ¸ðÀδٸé n°³ÀÇ ¿¡³ÊÁö¸¸ ¹ßÈÖÇÏ´õ¶óµµ ¸¸Á·ÇÒ ÅÍÀε¥ -º´·Ä ÇÁ·Î¼¼½ÌÀ̳ª ºÐ»ê ÄÄÇ»ÆÃÀ» »ý°¢Çغ¸¶ó- n°³ ÀÌ»óÀÇ È¿°ú¸¦ º¼ ¼ö ÀÖ´Ù´Â °ÍÀº À̵éÀÇ Á¶ÇÕÀ» ÅëÇØ ½Ã³ÊÁö¸¦ ÃËÁøÇÒ ¼ö ÀÖ¾î¾ß ÇÏ´Â ¸¶¹ýÀÌ ¼û°ÜÀÖ´Ù´Â »ç½ÇÀ» ÀǹÌÇÑ´Ù.

ÇÊÀÚ´Â ÀÌ ±ÛÀ» ÅëÇØ JBossÀÇ ³»ºÎ±¸Á¶¸¦ ¼³¸íÇÔÀ¸·Î¼­, ÇÏÀ§ ÇÁ·¹ÀÓ¿öÅ©µéÀÌ Á¶ÇյǾî À̸ÓÀü½º µÇ´Â ¸ð¾ç°ú, ÇÁ·¹ÀÓ¿öÅ©¸¦ ¾î¶»°Ô »ç¿ëÇØ¾ß ¾ÖÇø®ÄÉÀ̼ÇÀÌ À̸ÓÀü½º ÇÒ ¼ö ÀÖ´ÂÁö¸¦ ¼Ò°³ÇÒ ¿¹Á¤ÀÌ´Ù.

  À̸ÓÀü½º¸¦ À§ÇÑ ¾ÆÅ°ÅØÃ³ ÀÎÇÁ¶ó - JBoss ¸¶ÀÌÅ©·Î Ä¿³Î ÄÁÅ×À̳Ê

JBoss´Â ¼ö¸¹Àº ¼­ºê½Ã½ºÅÛ(ÇÁ·¹ÀÓ¿öÅ©)µéÀ» ÅëÇÕÇÏ¿© À̸ÓÀü½º µÈ´Ù. ¼­·Î °ü°è°¡ ¾ø´Â ÇÁ·¹ÀÓ¿öÅ©µéÀÌ ÅëÇÕµÇ¾î ¸·°­ÇÑ ½Ã³ÊÁö¸¦ âÃâÇϱâ À§ÇØ ÅëÇÕÀ» À§ÇÑ ÅºÅºÇÑ ¾ÆÅ°ÅØÃ³°¡ ÇÊ¿äÇÏ´Ù. ¼­ºê ÇÁ·¹ÀÓ¿öÅ©µéÀº ¼­·Î¿¡ ´ëÇØ¼­, ±×¸®°í JBoss¿¡ ÅëÇÕµÉÁö Á¶Â÷ ¸ð¸£´Â »óÅÂÀ̰í JBoss ¶ÇÇÑ ¾î¶² ¼­ºê ÇÁ·¹ÀÓ¿öÅ©¸¦ ÅëÇÕÇÒÁö ¸ð¸£°í ÀÖ´Ù.

J2EE ½ºÆåÀÌ ¹Ù²î°Å³ª °­·ÂÇÑ »õ·Î¿î ´ë¾È ÇÁ·¹ÀÓ¿öÅ©°¡ µîÀåÇÒ ¶§ ¸¶´Ù ±×µéÀ» Æ÷¼·ÇÒ ¼ö ÀÖ¾î¾ß ÇÏ´Â Å¿ÀÌ´Ù. ÀÌ·¸°Ô ¹«¾ùÀ» »ç¿ëÇÒÁö, ¹«¾ùµéÀÌ Á¶ÇÕµÉÁö Á¶Â÷ ¾Ë±â Èûµç Ȳ´çÇÑ ¿ä±¸ »çÇ×À» À§ÇØ ÇÁ·¹ÀÓ¿öÅ©³ª ÄÄÆ÷³ÍÆ® °£¿¡ öÀúÈ÷ °áÇÕµµ¸¦ ÁÙÀÏ ¼ö ÀÖ´Â(decoupling) À¯¿¬ÇÑ ¾ÆÅ°ÅØÃ³°¡ ÇÊ¿äÇÏ´Ù.

³¡À¸·Î JBoss´Â WAS(Web Application Server) ÀÚüÀÇ ÇѰèÀÎ ¡®¹«°Å¿ò(heavy weight)¡¯À» ±Øº¹ÇØ¾ß ÇÑ´Ù. µû¶ó¼­ JBoss ±âµ¿ ´ç½Ã ¸ðµç ¼­ºñ½º¿Í ÄÄÆ÷³ÍÆ®¸¦ ¸Þ¸ð¸®¿¡ ·ÎµùÇÏÁö ¾Ê±â À§ÇØ »ç¿ëµÇ´Â ½ÃÁ¡¿¡¼­ µ¿ÀûÀ¸·Î ¼­ºñ½º°¡ ·Îµù µÇ¾î¾ß ÇÑ´Ù. ´õºÒ¾î µ¿ÀûÀ¸·Î ¼­·Î¸¦ ÀνÄÇϰí È£ÃâÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ÀÌ·¸°Ô À̸ÓÀü½º¸¦ À§ÇÑ ¾ÆÅ°ÅØÃ³ ´ÏÁ Á¤¸®ÇÏ¸é ´ÙÀ½°ú °°´Ù.

• JBoss ¾ÆÅ°ÅØÃ³´Â ¿©·¯ ¼­ºñ½º, ÇÁ·¹ÀÓ¿öÅ©, ÄÄÆ÷³ÍÆ®µéÀÌ Àß ÃëÇÕµÉ ¼ö ÀÖ´Â °­°Ç¼ºÀ» ´ãº¸ÇØ¾ß ÇÑ´Ù.
• ±× °ÍµéÀÇ °áÇÕµµ°¡ ±Øµµ·Î ³·¾Æ¾ß ÇÑ´Ù.
• °¡º­¿ò(light weight)À» À§ÇØ ·±Å¸ÀÓ ½Ã¿¡ °¢ ±¸¼º¿ä¼ÒµéÀÌ plug & playµÉ ¼ö ÀÖµµ·Ï µ¿Àû ·Îµù, µ¿Àû ¹ÙÀεùÀÌ º¸ÀåµÇ¾î¾ß ÇÑ´Ù.

JBoss´Â ÀÌ·± Àú·± ´ÏÁ ¸¸Á·Çϱâ À§ÇØ ¸¶ÀÌÅ©·Î Ä¿³Î ¾ÆÅ°ÅØÃ³¸¦ ¼±ÅÃÇß´Ù. ¸¶ÀÌÅ©·Î Ä¿³ÎÀº ÃÖ¼ÒÇÑÀÇ ÇÙ½ÉÀû ±â´É¸¸À» °®°í ÀÖ´Ù. ¶ÇÇÑ ÇÁ·¹ÀÓ¿öÅ©°¡ »ç¿ëÇÏ´Â ¼­ºñ½º(ȤÀº ¼­ºê ÇÁ·¹ÀÓ¿öÅ©)µéÀÇ ÄÁÅ×ÀÌ³Ê ¿ªÇÒÀ» Çϰí ÀÖ´Ù(<±×¸² 1> ÂüÁ¶).

Áï, ¸¶ÀÌÅ©·Î Ä¿³ÎÀº À̵éÀÇ ¶óÀÌÇÁ »çÀÌŬÀ» °ü¸®Çϰí ÀÌµé °£ÀÇ µ¿ÀûÀÎ °ü°è¸¦ ¸Î¾îÁÖ±â À§ÇÑ ¹ö½º ¿ªÇÒÀ» ÇÑ´Ù. °¡·É jBPMÀÌ ÇÏÀ̹ö³×ÀÌÆ®¸¦ »ç¿ëÇÒ °æ¿ì ÀÌ µÑ °£ÀÇ °ü°è°¡ Çϵå ÄÚµùµÈ °­°áÇÕÀ¸·Î ÀÌ·ç¾îÁö´Â °ÍÀÌ ¾Æ´Ï¶ó ¸¶ÀÌÅ©·Î Ä¿³ÎÀ» ÅëÇØ ÀúÀåÇÏ´Â ¡®¾î¶² ¼­ºñ½º(½ÇÁ¦·Î´Â ÇÏÀ̹ö³×ÀÌÆ®)¡¯¿¡°Ô ¿äûÇÑ´Ù.

¹«¾ùº¸´Ù µ¿ÀûÀ¸·Î ±¸¼º ¿ä¼ÒµéÀÌ Ãß°¡(µî·Ï), Á¦°Å, Àçµî·Ï, ¹ÙÀεù(È£Ãâ)µÇ¾î °æ·®ÀÇ ¸Þ¸ð¸®¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

<±×¸² 1> JEMS : JBoss Enterprise Middleware Suite

¸¶ÀÌÅ©·Î Ä¿³Î ¾ÆÅ°ÅØÃ³´Â ¸» ±×´ë·Î ¾ÆÅ°ÅØÃ³ÀÏ »ÓÀÌ´Ù. ´Ù½Ã ¸»ÇØ ½Çü°¡ ¾ø´Â °³³äÀûÀÎ ¡®Àü·«¡¯ÀÌ´Ù. ¸¶ÀÌÅ©·Î Ä¿³ÎÀ» ¹«¾ùÀ¸·Î ¾î¶»°Ô ±¸ÇöÇØ¾ß ÇÒ±î? JBoss°¡ ¼±ÅÃÇÑ ½ÇüÀûÀÎ ¡®Àü¼ú¡¯Àº JMX(Java Management Extensions)¸¦ ÀÌ¿ëÇÏ´Â °ÍÀÌ´Ù.

¸¶ÀÌÅ©·Î Ä¿³ÎÀº MBean ¼­¹ö°¡ µÇ°í ±×°Í¿¡ µî·Ï, °ü¸®µÇ´Â ¼­ºê ÇÁ·¹ÀÓ¿öÅ©µéÀº MBean Ŭ¶óÀÌ¾ðÆ®°¡ µÈ´Ù. JMX¸¦ »ç¿ëÇÔÀ¸·Î½á JMXÀÇ ÀåÁ¡µéÀÌ ¸¶ÀÌÅ©·Î Ä¿³Î¿¡ ±×´ë·Î Àû¿ëµÈ´Ù. µû¶ó¼­ ¸¶ÀÌÅ©·Î Ä¿³Î¿¡ µî·ÏµÈ ¼­ºê ÇÁ·¹ÀÓ¿öÅ©µéÀº ÀÌÁ¦ JMX ½ºÆå¿¡ ÀÇÇØ ½Ç½Ã°£À¸·Î ¸ð´ÏÅ͸µ°ú ÄÁÆ®·Ñ ÇÒ ¼ö ÀÖ´Ù.

<±×¸² 2> JBoss ¸¶ÀÌÅ©·Î Ä¿³Î ¾ÆÅ°ÅØÃ³

  À̸ÓÀü½º¸¦ À§ÇÑ ¾Æ±³(Glue) - JBoss AOP

µ¶ÀÚ°¡ JavaEE ¼­¹öÀÇ µðÀÚÀ̳ʶó°í »ý°¢Çغ¸ÀÚ. ¼ö¸¹Àº ¼­ºñ½º¿Í ÄÄÆ÷³ÍÆ®¸¦ Á¶ÇÕÇϰí ÀϺδ º¯°æµÇ¸ç ¶Ç ÀϺδ Á¦°ÅµÇ¾î¾ß ÇÑ´Ù. ¿Ö³ÄÇϸé JavaEE ½ºÆåÀº ¸Å¿ì ±ÞÁøÀûÀ¸·Î º¯Ç߱⠶§¹®ÀÌ´Ù. ¶ÇÇÑ ¼­ºñ½º¿Í ¼­ºñ½º, ÄÄÆ÷³ÍÆ®¿Í ¼­ºñ½º, ÄÄÆ÷³ÍÆ®¿Í ÄÄÆ÷³ÍÆ® »çÀÌÀÇ °ü°èµéÀ» µ¿ÀûÀ¸·Î °ü¸®Çϱâ¶õ ¸¸¸¸ÇÑ ÀÛ¾÷ÀÌ ¾Æ´Ï´Ù.

JavaEE ¼­¹ö´Â ³»ºÎÀû º¯°æÀÌ À¯¿¬ÇØ¾ß ÇÏ´Â ½Ã½ºÅÛÀ̾î¾ß ÇÑ´Ù. ÀÌ·± ¸ñÀûÀ» À§ÇØ ¸¶ÀÌÅ©·Î Ä¿³ÎÀ̶õ Åä´ë°¡ ¸¸µé¾îÁ³´Ù. ÇÏÁö¸¸ JBoss´Â ¿ÀǼҽº ÇÁ·¹ÀÓ¿öÅ©µéÀÇ ÁýÇÕüÀÌ´Ù. °¢°¢ÀÇ ¿ÀǼҽºµéÀº ¾ÖÃÊ¿¡ JBoss¸¦ °Ü³ÉÇÏ¿© ¸¸µé¾îÁöÁö ¾Ê¾Ò±â ¶§¹®¿¡ µî·ÏµÈ ¼­ºñ½ºµéÀ» À¯¿¬ÇÏ°í µ¿ÀûÀÌ¸ç ´Ü¼øÇÏ°Ô ¿¬°á½Ãų ¼ö ÀÖ´Â ¡®¼ö´Ü¡¯ÀÌ ÇÊ¿äÇÏ´Ù.

À̹ø¿¡´Â µ¶ÀÚ°¡ JavaEE ¼­¹öÀÇ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀÚ¶ó°í »ý°¢Çغ¸ÀÚ. ±âÁ¸ JavaEE ¹æ½ÄÀÇ ÄÄÆ÷³ÍÆ®°¡ ¼­ºñ½º¸¦ µî·Ï/»èÁ¦/º¯°æÇÏ´Â ¹æ½ÄÀº »ó´çÈ÷ ºÒÆíÇÏ´Ù. Ç¥ÁØ¿¡ ÀÇÇØ Áö³­ÇÏ°íµµ ÀåȲÇÑ ¼³Á¤°ú ¿¬°á ÀÛ¾÷µéÀ» ÇØÁà¾ß ÇÏ´Â Å¿ÀÌ´Ù. ¾î¶² °æ¿ì´Â ºñÁî´Ï½º ·ÎÁ÷ Äڵ差º¸´Ù º¸¾È, Æ®·£Àè¼Ç, ·Î±ë µîÀÇ ¼­ºñ½º¸¦ »ç¿ëÇϱâ À§ÇÑ ÄÚµå ·®ÀÌ ´õ ¸¹Àº °æ¿ì°¡ ÀÖ´Ù.

ÇÏÁö¸¸ ºñÁî´Ï½º ÄÄÆ÷³ÍÆ®ÀÇ ¿ªÇÒÀº ºñÁî´Ï½º ·ÎÁ÷À» ¼öÇàÇϱâ À§ÇÑ ¸ñÀû¿¡ Ãæ½ÇÇϱ⸸ ÇÏ¸é µÈ´Ù. ¹Ý¸é JavaEE ÄÄÆ÷³ÍÆ®µéÀº º»·¡ÀÇ ¿ªÇÒ°ú ¹«°üÇÑ ¼­ºñ½º¸¦ ´Ù·ç´Â ¿ªÇÒµéÀ» ¸¹ÀÌ Æ÷ÇÔÇϰí ÀÖ´Ù. ºñÁî´Ï½º ÄÄÆ÷³ÍÆ®¿Í JavaEE ¼­ºñ½ºµéÀ» À¯¿¬ÇÏ°Ô ºÐ¸®½Ãų ¼ö ÀÖ´Â ¡®¼ö´Ü¡¯ÀÌ ÇÊ¿äÇÏ´Ù.

¸¶ÀÌÅ©·Î Ä¿³Î  

º»·¡ ¸¶ÀÌÅ©·Î Ä¿³ÎÀº ¿î¿µÃ¼Á¦ ºÐ¾ß¿¡¼­ ź»ýµÆ´Ù. À©µµ¿ì NT ½Ã½ºÅÛÀº °¡Àå À¯¸íÇÑ ¸¶ÀÌÅ©·Î Ä¿³Î ½Ã½ºÅÛÀÌ´Ù. NT Ä¿³Î ÀÌÀüÀÇ À©µµ¿ì ½Ã½ºÅÛÀº ´ÜÀÏü(Monolithic) ½Ã½ºÅÛÀ̶ó°í ÇÑ´Ù. ´ÜÀÏü ½Ã½ºÅÛ¿¡¼­´Â ¸ðµç OS ±â´É(¸ðµâ)µéÀÌ Ä¿³Î¿¡ Áý¾àµÇ¾î ÀÖ°í ÀÌ ¸ðµâµéÀº ¸ðµÎ Ä¿³Î ¸ðµå¿¡¼­ ½ÇÇàµÈ´Ù. µû¶ó¼­ ÇÑ ¸ðµâÀÇ º¯°æ(»óÅÂ)Àº ±× ¸ðµâ°ú ÀüÇô ¹«°üÇÑ ´Ù¸¥ ¸ðµâ¿¡°Ôµµ ¿µÇâÀ» ³¢Ä£´Ù.

À©µµ¿ì 98¿¡¼­ IP ¼³Á¤À» ¹Ù²Ù¸é ½Ã½ºÅÛÀ» ¸®ºÎÆÃ ÇØ¾ß ÇÏ´Â ÀÌÀ¯°¡ ÀÌ ¶§¹®ÀÌ´Ù. ÇÏÁö¸¸ À©µµ¿ìÁî NT(¸¶ÀÌÅ©·Î Ä¿³Î)¿¡¼­´Â ÆÄÀÏ °ü¸®ÀÚ, ³×Æ®¿öÅ© °ü¸®ÀÚ, ¸Þ¸ð¸® °ü¸®ÀÚ µîÀÇ ¸ðµâ°ú °¢Á¾ µð¹ÙÀ̽º µîÀÌ Ä¿³ÎÀÇ ÀϺΰ¡ ¾Æ´Ñ Ä¿³Î¿¡ µî·ÏµÈ ¼­ºñ½º·Î °ü¸®µÈ´Ù.

¶ÇÇÑ ½ÇÇ൵ À¯Àú¸ðµå¿¡¼­ ½ÇÇàµÈ´Ù. ±×·¡¼­ IP ¼³Á¤ÀÌ ¹Ù²î¾îµµ ½Ã½ºÅÛÀ» ¸®ºÎÆÃ ÇÒ Çʿ䰡 ¾ø´Ù. ´ÜÁö ³×Æ®¿öÅ© °ü¸®ÀÚÀÇ ¼³Á¤¸¸ º¯Çϱ⠶§¹®ÀÌ´Ù.

<±×¸² 3> ¿î¿µÃ¼Á¦¿¡¼­ÀÇ ¸¶ÀÌÅ©·Î Ä¿³Î ¾ÆÅ°ÅØÃ³

ÀÌ·± ±¸Á¶¸¦ È¥ÇÕÇü(Hybrid) ±¸Á¶¶ó°í ºÎ¸£´Âµ¥ ÀÌ·± ¾ÆÅ°ÅØÃ³¸¦ äÅÃÇÔÀ¸·Î½á ½Ã½ºÅÛ ¾ÈÁ¤¼ºÀ» ³ôÀÏ ¼ö ÀÖ´Ù. ´õºÒ¾î ÅëÇÕµÈ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇϸç, È®À强°ú À̽ļºÀÌ ³ô¾ÆÁø´Ù. ¶ÇÇÑ ¸ðµâ°£ÀÇ °áÇÕµµ°¡ Ãà¼ÒµÇ¾î ÇÑ ¸ðµâÀÇ º¯°æÀÌ ´Ù¸¥ ¸ðµâ¿¡°Ô ¿µÇâÀ» ³¢Ä¡Áö ¾Ê°í, ¸ðµâ À̵¿ÀûÀ¸·Î Ãß°¡ »èÁ¦ µÉ ¼ö ÀÖ´Ù´Â ÀåÁ¡µµ °¡Áø´Ù.

¹«¾ùº¸´Ù ¸ðµâ °³¹ßÀÚ¿¡°Ô Ç¥ÁØÈ­µÈ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ¿© °³¹ß ¿ëÀ̼ºÀ» Á¦°øÇÑ´Ù´Â °ÍÀÌ °¡Àå Å« È¿°ú¶ó ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. <±×¸² 2>¿Í <±×¸² 3>À» ÅëÇØ ÀÌ µÎ ¸ð½ÀÀÇ ÀåÁ¡µéÀ» ºñ±³ÇØ º¸ÀÚ.


AOP´Â ¿ªÇÒ°ú ¿ªÇÒ °£ÀÇ µ¿ÀûÀ̰í À¯¿¬ÇÏ°Ô ¡®°ü°è¡¯ ½Ã۱⵵ ÇÏ°í ¡®ºÐ¸®¡¯ ½Ã۱⵵ ÇÏ´Â ¹æ½ÄÀ» Á¦°øÇÑ´Ù. À̰ÍÀº ¿ªÇÒ°ú ¿ªÇÒ°£ÀÇ °ü°è¸¦ Å©·Î½º Ä¿ÆÃ(Cross-Cutting)ÇÏ¿© ºÐ¸®½ÃŰ´Â ¹æ¹ýÀÌ´Ù. JBoss´Â ºñÁî´Ï½º ÄÄÆ÷³ÍÆ®¿Í JavaEE ¼­ºñ µîÀ» À¯¿¬ÇÏ°Ô ºÐ¸®½Ã۱â À§ÇÑ ¡®¼ö´Ü¡¯À¸·Î AOP¸¦ ÀÌ¿ëÇϰí ÀÖ´Ù.

ÇϳªÀÇ ÄÄÆ÷³ÍÆ®(ºñÁî´Ï½º ·ÎÁ÷)°¡ ½ÇÇàµÉ ¶§ ¸¶ÀÌÅ©·Î Ä¿³ÎÀº JBoss AOP¸¦ ÀÌ¿ëÇØ ÄÄÆ÷³ÍÆ®°¡ ÇÊ¿äÇÑ(¼±¾ðÇÑ) ¼­ºñ½ºµéÀ» µ¿ÀûÀ¸·Î Á¶ÇÕÇÑ´Ù. À̸¦Å׸é ÄÄÆ÷³ÍÆ® A°¡ ½ÇÇàµÉ ¶§ º¸¾È, ij½Ã, Æ®·£Àè¼Ç µîÀÇ ¼­ºñ½ºµéÀÌ ÇϵåÄÚµù¿¡ ÀÇÇØ °ü°èµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó, JBoss AOP°¡ µ¿ÀûÀ¸·Î ÄÄÆ÷³ÍÆ® A¸¦ ½ÇÇà½Ã۱â Àü, ÈÄ, Áß°£¿¡ ¼­ºñ½ºµéÀ» È£ÃâÇÑ´Ù.

¹°·Ð ÀÌ ±¸Á¶´Â EJB 3.0ÀÇ ¾î³ëÅ×À̼Ç(annotation)À̳ª XML ¼³Á¤À» ÅëÇØ Á¤ÀǵȴÙ. ¸¶Ä¡ ÄÚ¾î J2EE ÆÐÅÏ¿¡¼­ ÀÎÅͼÁÆÃ ÇÊÅÍ(Intercepting Filter)¿Í À¯»çÇÑ ±¸Á¶·Î °¢ ¼­ºñ½ºµéÀ» È£ÃâÇÏ°Ô µÈ´Ù. ÀÌ °¢°¢ÀÇ ¼­ºñ½ºµéÀº MBean ¼­¹öÀÎ ¸¶ÀÌÅ©·Î Ä¿³Î¿¡ µî·ÏµÈ MBeanµé·Î °ü¸®µÈ´Ù.

<±×¸² 4> JBoss AOP¸¦ ÅëÇØ ÄÄÆ÷³ÍÆ®°¡ È£ÃâµÇ´Â ±¸Á¶

ÀÌó·³ À¯¿¬ÇÏ°Ô µ¿ÀÛÇϸ鼭µµ µ¿ÀûÀÌ¸ç ´Ü¼øÇÑ ¼³°è´Â ¸¶ÀÌÅ©·Î Ä¿³ÎÀÇ ÅëÁ¦ ¾Æ·¡ JBoss AOPÀÇ ¸¶¹ýÀ» ÅëÇØ ÀÌ·ïÁø´Ù. JBoss AOP´Â JBoss¿¡ µî·ÏµÈ °¢ °³Ã¼(¼­ºñ½º, ÄÄÆ÷³ÍÆ®)¸¦ ¿«¾îÁÖ´Â ¾Æ±³(Glue) ¿ªÇÒÀ» ÇÏ´Â ¼ÀÀÌ´Ù.

JBoss AOP´Â ÄÄÆ÷³ÍÆ®¿Í ¼­ºñ½º °£ÀÇ °ü°è¿¡¼­¸¸ ÀÌ¿ëµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó ¼­ºñ½º¿Í ¼­ºñ½º °£ÀÇ °ü°è¿¡¼­µµ ¶È°°ÀÌ Àû¿ëµÈ´Ù. µû¶ó¼­ ¼­ºñ½º¿Í ¼­ºñ½ºÀÇ Á¶ÇÕ ¶ÇÇÑ À¯¿¬ÇÏ°í µ¿ÀûÀÌ¸ç ´Ü¼øÇÑ °ü°è¸¦ °®´Â´Ù.

¿¹½Ã¸¦ ÅëÇØ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ, ºñÁî´Ï½º ÄÄÆ÷³ÍÆ® °³¹ßÀÚ°¡ ºñÁî´Ï½º ·ÎÁ÷¿¡ ÁýÁßµÈ ÄÄÆ÷³ÍÆ®¸¦ °³¹ßÇϰí AOP¸¦ ÅëÇØ ¼­ºñ½º¸¦ »ç¿ëÇÑ °Íó·³, ÇÁ·¹ÀÓ¿öÅ© °³¹ßÀÚ´Â ¼­ºê ÇÁ·¹ÀÓ¿öÅ© °£ÀÇ °ü°è¸¦ AOP¸¦ ÅëÇØ À¯¿¬ÇÏ°Ô °³¹ßÇÒ ¼ö ÀÖ´Ù.

°¡·É °ÔÀÓ ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ »ç¿ëÇÏ´Â Åë½Å, Æ®·£Àè¼Ç, OR ¸ÊÇÎ, »ç¿ëÀÚ °ü¸® µîÀÇ ÇÁ·¹ÀÓ¿öÅ©µéÀº äÆÃ ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ´Â °ÍµéÀÌ´Ù. AOP¸¦ ÀÌ¿ëÇÏ¸é »ó¼úÇÑ ¼­ºê ÇÁ·¹ÀÓ¿öÅ©µéÀ» äÆÃ ÇÁ·¹ÀÓ¿öÅ©¿¡ ÀûÇÕÇÏ°Ô ÀçÁ¶ÇÕÇÏ¿© ÇÁ·¹ÀÓ¿öÅ© ±¸ÃàÀ» ½±°Ô ÇØÁØ´Ù. ÀÌ·± ÀÌÀ¯ ¶§¹®¿¡ AOP´Â ÇÁ·¹ÀÓ¿öÅ© °³¹ßÀÚ¿¡°Ô ´õ¿í ¿ä±äÇÑ µµ±¸ÀÌ´Ù.

AOPÀÇ ºñ¿ë  

ÇÊÀÚ°¡ ½ÇÁ¦·Î ÇÁ·ÎÁ§Æ® Áß¿¡ °æÇèÇß´ø ÀÏÀÌ´Ù. Ŭ·¡½º¿¡¼­ ÀÚÁÖ »ç¿ëµÇ´Â ¸â¹ö º¯¼öÀÎ Log4JÀÇ ·Î°Å ¼±¾ðÀ̳ª DTO ȤÀº DB¸¦ ´Ù·ç´Â °ü¿ëÀûÀÎ ÄÚµåµéÀÇ Áߺ¹À» Á¦°ÅÇÏ°í ½Í¾ú´Ù.

ÇÏÁö¸¸ ÀÌ ÄÚµåµéÀ» ÀͽºÆ®·¢Æ® ¸Þ¼Òµå(Extract Method)³ª Ç®¾÷ ¸Þ¼Òµå(Pull Up Method) Çϱ⿣ Àû´çÈ÷ ºñÁî´Ï½º ·ÎÁ÷ ÄÚµå¿Í Ä¿Çøµ µÇ¾î ÀÖ¾î ¿ï¸ç °ÜÀÚ ¸Ô±â·Î °è¼Ó ½á¾ß¸¸ Çß¾ú´Ù. C++ ÇÁ·ÎÁ§Æ®¿´´Ù¸é ¸ÅÅ©·Î³ª ÅÛÇø´À» ÀÌ¿ëÇØ °£´ÜÈ÷ Á¦°ÅÇÒ ¼ö ÀÖÁö¸¸ ÀÚ¹Ù ÇÁ·ÎÁ§Æ®¿´±â ¶§¹®¿¡ ¾ð¾î»ó »ç¿ëÇÒ ¼ö ¾ø´Â ¹æ¹ýÀ̾ú´Ù.

ÇÏÁö¸¸ ½Ã°£ÀÌ Áö³¯¼ö·Ï ¹Ýº¹ÀûÀÎ ÄÚµåµéÀº ´õ¿í Áõ°¡Çß°í ´õ ÀÌ»ó °ßµô ¼ö ¾ø´Â Áö°æ¿¡ À̸£·¶´Ù. AOP¸¦ »ç¿ëÇÑ´Ù¸é ÄÄÆÄÀÏ Å¸ÀÓ È¤Àº ·±Å¸ÀÓ¿¡ ƯÁ¤ ÄÚµåµéÀ» ºñÁî´Ï½º ·ÎÁ÷ ÄÚµå¿Í Á¶ÇÕÇÏ¿© ½ÇÇà½Ãų ¼ö ÀÖÀ» °ÍÀ̱⿡ AOPÀÇ »ç¿ëÀ» °ËÅäÇß¾ú´Ù.

ÀÌ¹Ì Á¤ÀÇµÈ ¾î½ºÆåÆ®¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ¾î½ºÆåÆ®¸¦ ¸¸µé°í AOP ÇÁ·¹ÀÓ¿öÅ©°¡ Á¦°øÇÏ´Â API¸¦ ÅëÇØ µî·Ï°ú ¼³Á¤ÇÏ´Â ÀÏÀÌ »ý°¢º¸´Ù ÀÛ¾÷·®ÀÌ ¸¹¾Ò´Ù. ¹«¾ùº¸´Ù ÇÊÀÚ¸¦ °¥µîÇÏ°Ô Çß´ø ºÎºÐÀº Ȥ½Ã AOP¸¦ ¸ð¸¦Áöµµ ¸ð¸£´Â ÀÌ ½Ã½ºÅÛÀÇ ÀΰèÀÚ¿¡°Ô AOP ÇнÀÀ» °­¿äÇÏ°Ô µÉ ¼öµµ ÀÖ´Ù´Â Á¡À̾ú´Ù.

¿©±â¼­ ÇÊÀÚ´Â ¡®º¹Àâµµ¸¦ ÇØ°áÇϱâ À§ÇÑ º¹Àâµµ¡¯¿¡ ´ëÇØ¼­ »ý°¢ÇÏ°Ô µÇ¾ú´Ù. ºÐ¸íÈ÷ ÇÊÀÚ°¡ ¼³¸íÇß´ø Áߺ¹µÈ ÄÚµåµéÀº ÄÚµåÀÇ Ç°ÁúÀ» ¶³¾î¶ß¸°´Ù. ¹Ý¸é¿¡ ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ µµÀÔÇÑ ¼Ö·ç¼ÇÀÌ °®´Â º¹Àâµµ¿¡ ´ëÇØ¼­ ¿ì¸®´Â °ËÅäÇÏÁö ¾Ê´Â´Ù.

Ä¿³Ø¼Ç Çϳª·Î DB¸¦ Á¢±ÙÇÏ´Â ÀåȲÇÑ JDBC ÇÔ¼ö°¡ µÎ °³ Á¤µµ Àִµ¥, ÀÌ ÀåȲÇϰí Áߺ¹µÈ ÄÚµåµéÀ» ¾ø¾Ö±â À§ÇØ ÇÏÀ̹ö³×ÀÌÆ®¸¦ µµÀÔÇÏ´Â °æ¿ìµµ ÀÌ¿¡ ÇØ´çÇÒ °ÍÀÌ´Ù. ÀåȲÇÑ Áߺ¹Äڵ带 ÀÎÁ¤ÇÒ ¼ö¹Û¿¡ ¾ø´Â ºÎ´ãº¸´Ù ÇÏÀ̹ö³×ÀÌÆ®¸¦ ÇнÀÇÏ°í ½Ã½ºÅÛ¿¡ Ãß°¡ÇÏ´Â(°Ô´Ù°¡ ´Ù¸¥ »ç¶÷¿¡°Ô ÇнÀÀ» ¿ä±¸ÇØ¾ß ÇÏ´Â) ºÎ´ãÀÌ ¸î ¹è´Â ´õ Ŭ °ÍÀÌ´Ù.

»õ·Î¿î ¼Ö·ç¼ÇÀ» µµÀÔÇÒ ¶§ ¿ì¸®´Â °£È¤ Áý´Ü ÃÖ¸é °°Àº °Í¿¡ ºüÁö°ï ÇÑ´Ù. ±× ¼Ö·ç¼ÇÀÇ ¹®Á¦ ÇØ°á ´É·Â¸¸ º¸ÀÌ°í ¡®±× ¼Ö·ç¼Ç ÀÚü°¡ °®´Â ¹®Á¦¡¯¿¡ ´ëÇØ¼± °ü´ëÇØÁø´Ù. ¿Ö³ÄÇÏ¸é ±× ¼Ö·ç¼ÇÀÇ ¹®Á¦ ÇØ°á´É·ÂÀÌ ¼¼·ÃµÇ°í ÈǸ¢Çϱ⠶§¹®ÀÌ´Ù. ¼Ö·ç¼Ç ÀÚü°¡ °®´Â ¹®Á¦(º¹Àâµµ)¿Í ¼Ö·ç¼ÇÀÌ ÇØ°áÇÏ´Â º¹Àâµµ¸¦ ºñ±³ÇÏ¿© ´ëÂ÷´ëÁ¶Ç¥¸¦ ¸¸µé¾îº¸´Â °ÍÀº ÁÁÀº ½À°üÀÌ´Ù.

±×·¡¼­ ÇÊÀÚ´Â ±× ÇÁ·ÎÁ§Æ®¿¡¼­ ±×³É ÁöÀúºÐÇÏ°Ô »ì±â·Î °á½ÉÇß´Ù. °áÄÚ ±× µÑÀÇ Á¶ÇÕÀÌ À̸ÓÀü½º µÉ °Í °°Áö ¾Ê¾Ò°Ô ¶§¹®ÀÌ´Ù.


¸Þ½Ã¡ ¹ö½º - JGroups
Ŭ·¯½ºÅ͸µ ±¸Á¶´Â Ŭ·¯½ºÅ͸µ ±×·ì¿¡ µî·ÏµÈ ÇϳªÀÇ ¼­¹ö¿¡ Àå¾Ö°¡ ¹ß»ýÇßÀ» ¶§ ´Ù¸¥ ¼­¹ö·Î ´ëüµÉ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. µû¶ó¼­ »ç¿ëÀÚ°¡ ¼­¹ö A¿¡ ·Î±×ÀÎ Çß´Ù¸é °°Àº Ŭ·¯½ºÅ͸µ ±×·ìÀÇ ´Ù¸¥ ¼­¹ö B¿¡¼­µµ ±× Á¤º¸°¡ °øÀ¯µÇ¾î¾ß ÇÑ´Ù. ¼­¹ö A¿¡ Àå¾Ö°¡ ¹ß»ýÇÏ¸é »ç¿ëÀÚ´Â ¼­¹ö B¿¡°Ô ¼­ºñ½º¸¦ ¿äûÇϱ⠶§¹®ÀÌ´Ù.

¾î¶»°Ô Çϸé Ŭ·¯½ºÅ͸µ »óȲ¿¡¼­ ÇϳªÀÇ JBoss ¼­¹ö¿¡ ÀÔ·ÂµÈ ·Î±×ÀÎ »óŸ¦ ´Ù¸¥ ¼­¹öµé°ú °øÀ¯ÇÒ ¼ö ÀÖÀ»±î? °¡Àå ¼Õ½±°í È¿°úÀûÀÎ ¹æ¹ýÀº ¸ÖƼ ij½ºÆÃÀ» ÇÏ´Â °ÍÀÌ´Ù. Áï, ¼­¹ö A¿¡ »ç¿ëÀÚ È«±æµ¿ÀÌ ·Î±×ÀÎ Çß´Ù¸é ¼­¹ö A´Â Ŭ·¯½ºÅ͸µ ±×·ì¿¡ ¼ÓÇÑ ¸ðµç ¼­¹öµé¿¡°Ô ¸ÖƼ ij½ºÆÃÇÏ¿© È«±æµ¿ÀÌ ·Î±×ÀÎÇÑ »ç½ÇÀ» ¾Ë¸°´Ù. ÀÌ ¸Þ½ÃÁö¸¦ Àü´Þ ¹ÞÀº ¸ðµç ¼­¹ö´Â È«±æµ¿¿¡ ´ëÇÑ ¼¼¼ÇÀ» ¸¸µç´Ù. À̷νá È«±æµ¿Àº ¼­¹ö B¿¡¼­µµ ¼­¹ö AÀÇ ¼¼¼Ç Á¤º¸¸¦ ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ°Ô µÈ´Ù.

JBoss´Â ¼­·Î ´Ù¸¥ ¼­¹öµéÀÌ °°Àº Á¤º¸¸¦ °øÀ¯(¶Ç´Â º¹Á¦)ÇÒ ¼ö ÀÖµµ·Ï JGroups ÇÁ·¹ÀÓ¿öÅ©¸¦ Áö¿øÇÑ´Ù. JGroups´Â ¸ÖƼ ij½ºÆÃÀ» ÅëÇØ ±×·ì ¸Þ½Ã¡À» Á¦°øÇÏ´Â ÇÁ·¹ÀÓ¿öÅ©À̸ç ÇâÈÄ JBossÀÇ Å¬·¯½ºÅ͸µ ±â´ÉÀ» ¼öÇàÇϴµ¥ Áß¿äÇÑ ¿ªÇÒÀ» ÇÑ´Ù. ±¸Á¶´Â JMSÀÇ ÅäÇÈ ¸ðµ¨°ú À¯»çÇÏ´Ù.

JGroups°¡ ´Ù¸¥ ¸Þ½Ã¡ ÇÁ·¹ÀÓ¿öÅ©º¸´Ù Â÷º°È­µÈ ÀåÁ¡Àº ¸Þ½Ã¡ ½ºÅÃÀ» ÀÚÀ¯·Ó°Ô °ü¸®ÇÒ ¼ö Àִٴµ¥ ÀÖ´Ù. ±×·ì¿¡ ¼Ò¼ÓµÈ ÇϳªÀÇ ¼­¹ö°¡ ´Ù¸¥ ¼­¹ö¿¡°Ô ¸Þ½ÃÁö¸¦ ¸ÖƼ ij½ºÆÃÇÒ ¶§ ¿©·¯ °¡Áö Ãß°¡ÀûÀΠ󸮵éÀÌ ÇÊ¿äÇÒ ¼ö ÀÖ´Ù.

JGroups´Â ÀÌ·± Ãß°¡ÀûÀΠó¸® ±â´ÉÀ» ½ºÅÃÀ̶õ °³³äÀ¸·Î °ü¸®ÇÏ¿© ¸¶Ä¡ TCP/IP ½ºÅÃó·³ ¸Þ½ÃÁö¸¦ Àü¼ÛÇÒ ¶§ °¢°¢ÀÇ Ã³¸®µéÀ» ¼öÇàÇÏ°Ô ÇÑ µÚ¿¡ ¸Þ½ÃÁö¸¦ Àü¼ÛÇÑ´Ù.

°¡·É ¼­¹ö°¡ ¿©·¯ ¸Þ½ÃÁöµéÀ» Àü¼ÛÇÒ ¶§ À¯µ¶ ÇϳªÀÇ ¸Þ½ÃÁö »çÀÌÁî°¡ ³Ê¹« Ä¿¼­ ±× ¸Þ½ÃÁö¸¦ Àü¼ÛÇϱâ À§ÇØ ¸¹Àº ½Ã°£ÀÌ °É¸®´Â °æ¿ì°¡ ÀÖ´Ù. ÀÌ Å« ¸Þ½ÃÁö ¶§¹®¿¡ ±ä±ÞÇÑ ´Ù¸¥ ¸Þ½ÃÁö°¡ ´ë±âµÇ¾î ´Ê°Ô Àü¼ÛµÇ´Â ¹®Á¦°¡ ¹ß»ýÇϰï ÇÑ´Ù. À̶§ Å« ¸Þ½ÃÁö¸¦ Å丷 ³»¾î Çϳª¾¿ Àü¼ÛÇÏ¿© ´Ù¸¥ ¸Þ½ÃÁö Àü¼Û ±âȸ¸¦ º¸ÀåÇÏ´Â ±â¹ýÀÌ ÇÊ¿äÇÏ´Ù.

JGroups¿¡¼­´Â ÀÌ·± ¡®Å丷 ³»±â(Fragmentation)¡¯ ±â´ÉÀ» Á¦°øÇϱâ À§ÇØ ¼³Á¤¿¡¼­ ÇÁ·¡±×¸àÅ×ÀÌ¼Ç ½ºÅÃÀ» Ãß°¡ÇÏ¿© ÀÚµ¿À¸·Î ¸Þ½ÃÁö¸¦ ºÐÇÒ Àü¼ÛÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇϰí ÀÖ´Ù.

¶ÇÇÑ, ¸ÖƼ ij½ºÆÃÀº º»ÁúÀûÀ¸·Î UDP ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇϱ⠶§¹®¿¡ ¸Þ½ÃÁö ¼ø¼­¸¦ º¸ÀåÇÏÁö ¾Ê´Â´Ù. ÇÏÁö¸¸ ´ëºÎºÐÀÇ ¼­¹ö-Ŭ¶óÀÌ¾ðÆ® È¯°æ¿¡¼­´Â ±âº»ÀûÀ¸·Î ¸Þ½ÃÁö ¼ø¼­ÀÇ º¸ÀåÀ» ¿ä±¸ÇÑ´Ù.

À̶§ ¿À´õ¸µ ½ºÅÃÀ» Ãß°¡ÇÏ¸é ¸Þ½ÃÁö ¼Û/¼ö½ÅÀÇ ¼ø¼­¸¦ º¸ÀåÇÑ´Ù. ¶ÇÇÑ SSL Åë½ÅÀ» ¿øÇÒ °æ¿ì º¸¾È ½ºÅÃÀ», Ç÷οì ÄÁÆ®·ÑÀ» Á¦°øÇϱâ À§ÇØ Ç÷οì ÄÁÆ®·Ñ ½ºÅÃÀ» Ãß°¡ÇÏ¸é ¸Þ½ÃÁö ¼Û¼ö½Å Àü¿¡ °¢°¢ÀÇ Ã³¸®µéÀÌ ¼öÇàµÈ´Ù.

<±×¸² 5> JGroups ±¸Á¶

<±×¸² 4>¿Í <±×¸² 5>´Â ¸Å¿ì À¯»çÇÑ ¸ð¾çÀ» °®´Â´Ù. ÄÄÆ÷³ÍÆ®¸¦ È£ÃâÇϱâ Àü¿¡ JBoss AOP°¡ ¾î³ëÅ×À̼ÇÀ¸·Î ¼±¾ðµÈ ¼­ºñ½ºµéÀ» È£ÃâÇÏ´Â °Íó·³, JGroups´Â ¸Þ½ÃÁö¸¦ ¼Û¼ö½ÅÇϱâ Àü¿¡ °¢ ½ºÅÃÀ» Åë°úÇÏ¿© ¸Þ½ÃÁö¿¡ ´ëÇÑ Ã³¸®¸¦ ´ã´çÇÏ°Ô ÇÑ´Ù. ´õ ³î¶ó¿î °ÍÀº ¸ð¾ç¸¸ À¯»çÇÑ °ÍÀÌ ¾Æ´Ï¶ó ½ºÅÃÀ» °ü¸®ÇÏ´Â ¹æ¹ý ¶ÇÇÑ °°´Ù´Â »ç½ÇÀÌ´Ù.

µû¶ó¼­ °¢ ½ºÅõéÀº AOPÀÇ ¼±¾ð¿¡ ÀÇÇØ µ¿ÀûÀ¸·Î Ãß°¡, »èÁ¦Çϰųª Á¤·ÄÇÏ°Ô µÈ´Ù.

<Ç¥ 1>Àº JGroups°¡ Á¦°øÇÏ´Â À¯¿ëÇÑ ½ºÅà Áß ÀϺÎÀÌ´Ù. ¿©±â¿¡´Â ÇѱÛó¸® µîÀÇ ÇÊ¿äÇÑ ½ºÅÃÀ» »ç¿ëÀÚ°¡ Á÷Á¢ Á¦ÀÛÇÏ¿© Ãß°¡ÇÒ ¼öµµ ÀÖ´Ù.


JBoss´Â JGroups¸¦ ÅëÇØ Ŭ·¯½ºÅ͸µ ±×·ì ¾È¿¡ ´Ù¸¥ ¼­¹öµé°ú SFSB(Stateful Session Bean)ÀÇ »óŸ¦ °øÀ¯ÇÑ´Ù. ¾Õ¼­ ¼³¸íÇÑ ¿¹¿¡¼­Ã³·³ »ç¿ëÀÚÀÇ ·Î±×ÀÎ Á¤º¸, ÁÖ¹®µµ¼­ ¸ñ·Ï Á¤º¸ µîÀÇ ¼¼¼Ç Á¤º¸¸¦ ´Ù¸¥ ¼­¹ö¿¡°Ô º¹Á¦ÇÏ¿©, ÇϳªÀÇ ¼­¹ö¿¡ Àå¾Ö°¡ ¹ß»ýÇÒ °æ¿ì ´Ù¸¥ ¼­¹ö°¡ °°Àº »óÅ·Π¼­ºñ½º ÇÒ ¼ö ÀÖ´Ù.

ÀÌ¿Í °°ÀÌ JGroups´Â JBoss ¼­¹öµé »çÀÌ¿¡ ¸Þ½ÃÁö ¹ö½º ¿ªÇÒÀ» ´ã´çÇÏ¸ç »ó´çÈ÷ À¯¿ëÇÑ Å¬·¯½ºÅ͸µ ±â¹Ý ±¸Á¶¸¦ Á¦°øÇÑ´Ù.

¹°·Ð, JGroups´Â ÀÚü¸¸À¸·Îµµ »ç¿ëÇϱâ À¯¿ëÇÑ ±×·ì ¸Þ½Ã¡ ÇÁ·¹ÀÓ¿öÅ©ÀÌ´Ù. °¡·É äÆÃ ÇÁ·Î±×·¥À» ¸¸µç´Ù°í °¡Á¤ÇÏÀÚ. À̶§ °¢ äÆÃ¹æÀ» ÇϳªÀÇ ±×·ìÀ¸·Î Á¤ÀÇÇÏ°í ±× ±×·ì¿¡ µî·ÏµÈ »ç¿ëÀÚ¿¡°Ô ¸Þ½ÃÁö¸¦ ¸ÖƼ ij½ºÆÃÇÒ ¶§ ´Ü¼øÇÑ ÄÚµùÀ¸·Î º¹ÀâÇÑ Ã³¸®¸¦ ¼öÇàÇÏ°Ô ÇÑ´Ù. <¸®½ºÆ® 1>À» »ìÆìº¸ÀÚ.

±âÁ¸ÀÇ ³×Æ®¿öÅ© ÇÁ·Î±×·¥¿¡¼­ »ó»óÇϱâ Èûµé Á¤µµ·Î ¾ÐÃàµÈ ÄÚµå ·®À¸·Î °­·ÂÇÑ ±â´ÉÀ» Á¦°øÇÑ ´Ù´Â »ç½ÇÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.

 <¸®½ºÆ® 1> JGrupsÀÇ ÄÚµå »ùÇÃ


JBossCache
JGroups°¡ ³×ÀÌÆ¼ºêÇÑ ±×·ì ¸Þ½Ã¡ Åë½Å ÇÁ·¹ÀÓ¿öÅ©¶ó¸é JBossCache´Â º¹Á¦µÇ´Â ÀÚ·á ±¸Á¶¸¦ Á¦°øÇÔÀ¸·Î½á ¼­¹öµé °£ÀÇ µ¿ÀÏÇÑ ¸Þ¸ð¸® Á¤º¸¸¦ °®´Â ij½Ã¸¦ À¯ÁöÇÏ°Ô ÇÑ´Ù. »ç½Ç º»ÁúÀûÀ¸·Î º°·Î ´Ù¸¦ ¹Ù ¾ø´Â ¿ø¸®ÀÌÁö¸¸ ÀÌ µÑ °£ÀÇ Â÷ÀÌ´Â »ó´çÈ÷ Å©´Ù. JGroups¿¡ À־ Á¤º¸¸¦ ´Ù¸¥ ¼­¹ö·Î º¹Á¦ÇÑ´Ù´Â Àǹ̴ ¸Þ½ÃÁö¸¦ send() ÇÑ´Ù´Â ÇàÀ§ÀÌ´Ù.

ÇÏÁö¸¸ JBoss Cache¿¡¼­ÀÇ º¹Á¦ ÇàÀ§´Â JBossCache ÄÝ·º¼Ç¿¡ Á¤º¸¸¦ put() ȤÀº add() ÇÏ´Â °ÍÀÌ´Ù. ´ÜÁö ¾î¶² ÄÝ·º¼Ç¿¡ °´Ã¼¸¦ Ãß°¡ÇßÀ» »ÓÀε¥ ±× °´Ã¼°¡ ÀÚµ¿ÀûÀ¸·Î ´Ù¸¥ ¼­¹öµéÀÇ µ¿ÀÏÇÑ ÄÝ·º¼Ç¿¡ put() ȤÀº add() ÇÏ°Ô µÈ´Ù.

JGroups¿Í JBossCacheÀÇ ÀÎÅÍÆäÀ̽º´Â ¸ÖƼ ij½ºÆ® Åë½Å ÀÎÅÍÆäÀ̽º¿Í À̸¦ »ç¿ëÇÏ±â Æí¸®ÇÏ°Ô ºÐ»ê, º¹Á¦Çϰųª ij½Ã ÀÎÅÍÆäÀ̽º¸¸ ´Ù¸¦ »ÓÀÌÁö º»ÁúÀº °®Áö ¾Ê´Â´Ù°í »ý°¢ÇÒ ¼ö µµ ÀÖÀ» °ÍÀÌ´Ù. »ç½ÇÀº JBossCache´Â ³»ºÎÀûÀ¸·Î JGroups¸¦ ÀÌ¿ëÇÑ´Ù. µû¶ó¼­ JGroupsÀÇ °­·ÂÇÑ ½ºÅà ¼³Á¤À» ±×´ë·Î ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

ÇÏÁö¸¸ JBossCache´Â JGroups¸¦ ÀÌ¿ëÇÑ À¯Æ¿¸®Æ¼ ¼öÁØÀÇ ¶óÀ̺귯¸® ±â´É¸¸ Á¦°øÇÏ´Â °ÍÀÌ ¾Æ´Ï´Ù. JGroups¿¡¼­µµ ÀÌ·± ¸ñÀûÀ» À§ÇØ DistributedHashMap µîÀÇ À¯Æ¿¸®Æ¼ Ŭ·¡½º¸¦ Á¦°øÇÑ´Ù. JBossCache´Â ¼¼ °¡Áö Á¾·ùÀÇ Ä³½Ã ¸ðµ¨À» Á¦°øÇÑ´Ù.

1) ·ÎÄà ij½Ã : ÀÏ¹Ý Ä³½Ã Ŭ·¡½º¿Í ´Ù¸¦ ¹Ù ¾ø´Ù. ´Ù¸¥ ¼­¹ö·Î ij½Ã Á¤º¸¸¦ º¹Á¦ ÇÏÁö ¾Ê´Â´Ù.
2) µ¿±â ij½Ã : ´Ù¸¥ ¼­¹ö·Î ij½Ã Á¤º¸¸¦ µ¿±âÀûÀ¸·Î º¹Á¦ÇÑ´Ù. µû¶ó¼­ ¼­¹ö A¿¡¼­ ij½Ã¿¡ put()ÇÏ¸é °ð¹Ù·Î ´Ù¸¥ ¸ðµç ¼­¹öµéÀÇ Ä³½Ã¿¡ ±× Á¤º¸¸¦ put()Çϰí ÀÌ ÀÛ¾÷ÀÌ ¸¶Ä£ ¼ö ¿ø·¡ÀÇ put() ¸Þ¼Òµå°¡ ¸®ÅÏ µÈ´Ù. ÀÏÁ¾ÀÇ Æ®·£Àè¼ÇÀÌ º¸ÀåµÇ´Â °ÍÀÌ´Ù.
3) ºñµ¿±â ij½Ã : µ¿±â ij½Ã¿Í µ¿ÀÏÇÑ µ¿ÀÛÀ» ÇÏÁö¸¸ ¸Þ½ÃÁö Àü¼ÛÀÌ ºñµ¿±âÀûÀ¸·Î ÀÌ·ïÁø´Ù. µû¶ó¼­ put() ¸Þ¼Òµå°¡ ¸®ÅÏ µÇ±â ÀÌÀü¿¡ ´Ù¸¥ ¸ðµç ¼­¹öÀÇ Ä³½Ã¿¡ ±× µ¥ÀÌÅ͸¦ put()ÇÏ´Â °ÍÀÌ º¸ÀåµÇÁö ¾Ê´Â´Ù. µ¿±â ij½Ã´Â ¸Þ¸ð¸®ÀÇ ½Ç½Ã°£ÀûÀÎ µ¿±âÈ­¸¦ º¸ÀåÇÏÁö¸¸, ¼Óµµ´Â ºñµ¿±â ij½Ã°¡ ´õ ºü¸£´Ù.

JBossCache´Â POJO ·¹º§ÀÇ Ä³½Ã¸¦ Á¦°øÇÑ´Ù. ¸¸¾à ¾î¶² °´Ã¼¸¦ Àü¼ÛÇÑ´Ù°í »ý°¢Çغ¸ÀÚ. °´Ã¼¸¦ Àü¼ÛÇϱâ À§ÇØ ±× °´Ã¼´Â Serializable ÀÎÅÍÆäÀ̽º¸¦ »ó¼Ó ¹Þ¾Æ¾ß ÇÑ´Ù. ±×·¡¾ß °´Ã¼¸¦ ½ºÆ®¸²À¸·Î ¸¸µé ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÇÏÁö¸¸ JBossCache´Â POJO °´Ã¼¸¦ put() ÇÏ´õ¶óµµ JBossAOP¿¡ ÀÇÇØ ½ºÆ®¸²À¸·Î º¯È¯ÀÌ °¡´ÉÇÑ POJO·Î ¸¸µé¾îÁØ´Ù.

JBossCache´Â ½ÇÁ¦·Î ÀԷµǴ °´Ã¼¸¦ °ü¸®Çϱâ À§ÇÑ ÀڷᱸÁ¶·Î Æ®¸®¸¦ »ç¿ëÇÑ´Ù. ÇÏÁö¸¸ »ç¿ë ÆíÀǼºÀÌ ¶³¾îÁö´Â Æ®¸® ±¸Á¶ÀÇ ºÒÆíÇÔÀ» ´ëÆø °³¼±ÇÑ´Ù. °³¹ßÀÚ¿¡°Ô Ä£±ÙÇÑ ¸Ê(Map)ó·³ Æ®¸®¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù.

<±×¸² 6> ºÐ»ê º¹Á¦¿¡¼­ °øÀ¯ ·¹ÆÛ·±½ºÀÇ ¹®Á¦Á¡

ij½Ã¿¡ µî·ÏµÈ °´Ã¼µéÀ» ´Ù¸¥ ¼­¹öÀÇ Ä³½Ã·Î ºÐ»ê º¹Á¦ÇÒ ¶§¿¡´Â ¸î °¡Áö ³­°¨ÇÑ ¹®Á¦µéÀÌ ¹ß»ýÇÑ´Ù. <±×¸² 6>¿¡¼­ º¸´Â ¹Ù¿Í °°ÀÌ Joe, Mary °´Ã¼´Â ½ÇÁ¦·Î µ¿ÀÏÇÑ Addr °´Ã¼¸¦ ÂüÁ¶ÇÑ´Ù. ÀÌ·± »óȲ¿¡¼­ Joe¿Í Mary¸¦ °¢°¢ JBossCache¿¡ put() ÇÏ°Ô µÇ¸é °¢°¢ÀÇ °´Ã¼µéÀÌ ´Ù¸¥ ¼­¹öµé¿¡ º¹Á¦µÇ¾î Addr´Â ½ÇÁ¦·Î µÎ °³ÀÇ ÀνºÅϽº·Î º¹Á¦µÈ´Ù.

´õ À§ÇèÇÑ °ÍÀº JoeÀÇ Addr¸¦ º¯°æÇßÀ» °æ¿ì ¿øº» ¼­¹ö¿¡¼­´Â º¯°æµÈ AddrÀ» Joe, Mary°¡ ÂüÁ¶ÇÏÁö¸¸ ´Ù¸¥ ¼­¹öµéÀº º¯°æµÈ AddrÀÇ Á¤º¸¸¦ °øÀ¯ÇÏÁö ¸ø ÇÏ´Â °ÍÀÌ´Ù. µû¶ó¼­ ´Ù½Ã Joe¿Í Mary¸¦ put() ÇØÁà¾ß µ¿ÀÏÇÑ Ä³½Ã¸¦ À¯ÁöÇÒ ¼ö ÀÖ´Ù. À̶§ Joe¸¸ put()ÇÏ¸é ´Ù¸¥ ¼­¹öµéÀÇ Mary´Â Joe¿¡ ´Ù¸¥ AddrÀÇ °ªÀ» °¡Áö°Ô µÈ´Ù.

ÀÌ·¯ÇÑ º¹Á¦ ¹æ½ÄÀ» coarse-grained º¹Á¦¹æ½ÄÀ̶ó Çϴµ¥ ³×Æ®¿öÅ© »ç¿ë·®°ú ¸Þ¸ð¸® »ç¿ë·®, ¿¡·¯ °¡´É¼ºÀÌ ³ôÀº ´ÜÁ¡À» °®°í ÀÖ´Ù. ±×·¡¼­ JBossCache´Â TreeCacheAOP Ŭ·¡½º¸¦ Á¦°øÇÑ´Ù.

TreeCacheAOP´Â <±×¸² 6>°ú °°Àº »óȲ¿¡¼­ ÇÑ °³ÀÇ Addr¸¸ º¹Á¦ÇÑ´Ù. ÀÌ´Â AOP¿¡ ÀÇÇØ Addr°¡ ·¹ÆÛ·±½º µÇ´Â Joe¿Í Mary °´Ã¼¸¦ ¾Ë°í Àֱ⠶§¹®ÀÌ´Ù. À̶§ Joe°¡ AddrÀ» º¯°æÇßÀ» ¶§ º¯°æµÈ Addr¸¸ º¹Á¦µÇ¾î ³×Æ®¿öÅ© »ç¿ë·®°ú ¸Þ¸ð¸® »ç¿ë·®±îÁö ÃÖ¼ÒÈ­ ½ÃŰ´Â °æÀÌ·Î¿î ¸¶¹ýµµ ÇÔ²² ÀÌ·ïÁø´Ù.

ÀÌ·± ¹æ½ÄÀ» ÆÄÀα׷¹Àεå(fine-grained) º¹Á¦¹æ½ÄÀ̶ó°í ºÎ¸¥´Ù. TreeCacheAOP¿¡ µî·ÏµÈ °´Ã¼´Â setter ¸Þ¼Òµå³ª ¡®=¡¯ ¿ÀÆÛ·¹ÀÌÅÍ¿¡ ÀÇÇØ ¸â¹ö º¯¼ö¸¦ º¯°æÇßÀ» ¶§ AOPÀÇ ÀÎÅͼÁÅͰ¡ µ¿ÀÛÇÏ¿© °ð¹Ù·Î ´Ù¸¥ ¼­¹ö·Î º¯°æµÈ Á¤º¸¸¸ º¹Á¦ÇÑ´Ù. À̰ÍÀº JoeÀÇ ¸â¹ö º¯¼öÀÎ AddrÀÇ ¸â¹ö º¯¼ö¸¦ º¯°æÇÒ ¶§µµ ¸¶Âù°¡Áö´Ù.

°á°úÀûÀ¸·Î ¾Æ¹«¸® °´Ã¼ÀÇ ³»ºÎ ±¸Á¶°¡ ÄÄÆ÷Áö¼ÇÀ̳ª »ó¼ÓÀ¸·Î º¹ÀâÇØÁ® ÀÖ´Ù ÇÏ´õ¶óµµ Á¤±³Çϰí Á¤È®ÇÑ º¹Á¦ ¸ÞÄ¿´ÏÁòÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

½ÇÁ¦·Î JBoss´Â ¿£Æ¼Æ¼ ºó(Entity Bean) ÇÁ·¹ÀÓ¿öÅ©·Î »ç¿ëÇϰí ÀÖ´Â ÇÏÀ̹ö³×ÀÌÆ®¿¡¼­ TreeCacheAOP¸¦ »ç¿ëÇÑ´Ù. ÇÏÀ̹ö³×ÀÌÆ®´Â read()ÇÒ ¶§ DB¸¦ ¸Å¹ø select ÇÏÁö ¾Ê±â À§ÇØ ³»ºÎÀûÀ¸·Î ij½Ã¸¦ Á¦°øÇÑ´Ù.

ÇÏÁö¸¸ ÀÌ ¼­¹ö°¡ Ŭ·¯½ºÅ͸µÀ¸·Î ¿«¿©ÀÖ´Ù¸é ÀÌ Ä³½Ã Á¤º¸¸¦ °øÀ¯ÇÒ ¶§ È¿À²¼ºÀ» ³ôÀÏ ¼ö ÀÖ´Â °æ¿ì°¡ ÀÖ´Ù. À̶§ ÇÏÀ̹ö³×ÀÌÆ®´Â ºÐ»ê ij½Ã ¸ÞÄ¿´ÏÁòÀ¸·Î TreeCacheAOP¸¦ »ç¿ëÇÑ´Ù.

  Å¬·¯½ºÅ͸µ Ä¿¹Â´ÏÄÉÀ̼Ç

Ŭ·¯½ºÅ͸µÀ̶õ ÇϳªÀÇ ¼­ºñ½º¸¦ À§ÇØ ¿©·¯ °³ÀÇ ¼­¹ö¸¦ »ç¿ëÇÏ´Â °ÍÀ» ¸»ÇÑ´Ù. ÀÌ·¸°Ô ÇÏ¸é ºÎÇϸ¦ ºÐ»ê½ÃÄÑ ¼­¹öÀÇ °¡¿ë¼ºÀ» ³ôÀÏ(Load Balancing) ¼ö ÀÖ´Ù. ¶Ç, ÀϺΠ¼­¹ö¿¡ Àå¾Ö°¡ ¹ß»ýÇÏ´õ¶óµµ ³ª¸ÓÁö ¼­¹öµéÀ» ÅëÇØ ¼­ºñ½º°¡ Á¤»óÀûÀ¸·Î ¿î¿µÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â °Í(¹«Á¤ÁöÇü, Fault Tolerant)µµ ÁÖµÈ ¸ñÀûÀÌ´Ù.

ÀÌ·¸°Ô ¿©·¯ ¼­¹öµéÀÌ µ¿ÁúÀÇ ¼­ºñ½º¸¦ ÇÒ ¼ö ÀÖÀ¸·Á¸é ¸ÕÀú °¢ ¼­¹öµéÀÌ ¼­·Î¸¦ ¾Ë°í ÀÖ¾î¾ß ÇÏ¸ç ¼­·ÎÀÇ ¸Þ¸ð¸® »óŸ¦ µ¿ÀÏÇÏ°Ô À¯ÁöÇØ¾ß ÇÑ´Ù. ÀÌ·¸°Ô ¼­ºñ½ºµÇ´Â ¼­¹öµéÀÇ ÁýÇÕÀ» Ŭ·¯½ºÅ͸µ ±×·ìÀ̶ó°í Çϴµ¥ JBoss¿¡¼­´Â ÆÄƼ¼ÇÀ̶õ °³³äÀ¸·Î Ç¥ÇöÇÑ´Ù.

¼­ºñ½º ¿î¿µ Áß ÇϳªÀÇ ¼­¹ö¿¡ ¹®Á¦°¡ »ý°åÀ» ¶§ ´Ù¸¥ ¼­¹ö°¡ ¼­ºñ½º¸¦ ´ëüÇÒ ¼ö ÀÖÀ¸·Á¸é ¾î¶² 󸮵éÀ» ÇØ µÎ¾î¾ß ÇÒ±î? º¸Åë ÀÚ±ÝÀÌ ÃæºÐÇÏ´Ù¸é L4 ½ºÀ§Ä¡¸¦ »ç¿ëÇÑ´Ù. ÇÏÁö¸¸ ²À ½ºÀ§Ä¡¸¦ »ç¿ëÇÏÁö ¾Ê´õ¶óµµ ¼ÒÇÁÆ®¿þ¾îÀûÀ¸·Î ÇØ°áÇÒ ¼ö ÀÖ´Ù. JBoss¿¡¼­´Â ÀÎÅÚ¸®ÀüÆ® ½ºÅÓ(intelligent stub)À» »ç¿ëÇÏ¿© ÀÌ ¹®Á¦¸¦ ÇØ°áÇÑ´Ù.

¿ì¸®´Â º¸Åë EJB È£ÃâÀ» À§ÇØ JNDI¸¦ ÅëÇØ EJBÀÇ ½ºÅÓÀ» ¾ò¾î¿Â´Ù. JBoss°¡ ½ºÅÓÀ» ¸¸µé ¶§ ÇϳªÀÇ EJB¿¡ ´ëÇÑ Á¤º¸¸¦ ¾ò¾î¿À´Âµ¥ ÀÎÅÚ¸®ÀüÆ® ½ºÅÓÀº ÆÄƼ¼Ç¿¡ ¼ÓÇÑ µ¿Á¾ÀÇ ´Ù¸¥ EJB È£Ãâ Á¤º¸µµ °°ÀÌ Æ÷ÇÔÇϰí ÀÖ´Ù. ±×·¡¼­ ºÎÇϺлêÀ̳ª ¹«Á¤ÁöÇü 󸮸¦ ÇÒ ¶§ ´Ù¸¥ ¼­¹öÀÇ µ¿ÀÏÇÑ EJB¸¦ È£ÃâÇÑ´Ù.

<±×¸² 7> JBoss Fault Tolerant

¹°·Ð È£ÃâµÈ EJB´Â JGroups¿¡ ÀÇÇØ Àå¾Ö°¡ »ý±ä ¼­¹öÀÇ EJB¿Í µ¿ÀÏÇÑ »óŸ¦ À¯ÁöÇÑ´Ù. ºÎÇÏ ºÐ»êÀÇ °æ¿ì¸¦ »ý°¢Çغ¸ÀÚ. ºÎÇϸ¦ ºÐ»ê½ÃŰ·Á¸é ÆÄƼ¼Ç¿¡ µî·ÏµÈ ¼­¹öµéÀÌ ±ÕÀÏÇÏ°Ô ¼­ºñ½º Çϵµ·Ï ÇØ¾ß ÇÑ´Ù(ÇϳªÀÇ ¼­ºñ½º¿¡¸¸ ºÎÇϰ¡ ¸¹ÀÌ °É¸°´Ù¸é ºÎÇÏ ºÐ»êÀÌ µÇÁö ¾Ê´Â °ÍÀÌ´Ù).

ÀÎÅÚ¸®ÀüÆ® ½ºÅÓÀº ºÎÇÏ ºÐ»êÀÇ ÇüÆò¼ºÀ» º¸ÀåÇϱâ À§ÇØ ´ÙÀ½¿¡ È£ÃâÇÒ ¼­ºñ½º¸¦ ¼±ÅÃÇϱâ À§ÇÑ Á¤Ã¥À» Á¦°øÇÑ´Ù. ´ÙÀ½Àº JBoss ÀÎÅÚ¸®ÀüÆ® ½ºÅÓÀÇ ºÎÇÏ ºÐ»ê Á¤Ã¥ÀÌ´Ù.

• RoundRobin : ¼ø¼­ ¼øÈ¯ ¹æ½Ä
• FirstAvailable : ÆÄƼ¼Ç ³»ÀÇ ¸ðµç ¼­¹öµé¿¡°Ô ÇÎ(ping)À» ³¯·Á ÃÖÃÊ·Î µµ´ÞÇÏ´Â ¼­¹ö¸¦ ¼±ÅÃÇÏ´Â ¹æ½ÄÀÌ´Ù. À̶§ ¼±ÅÃµÈ ¼­¹ö´Â ´Ù¸¥ Ŭ¶óÀÌ¾ðÆ®µé¿¡°Ô °øÀ¯µÇÁö ¾Ê´Â´Ù. Áï, ´Ù¸¥ Ŭ¶óÀ̾ðÆ®ÀÇ ½ºÅÓ ¸®½ºÆ®¿¡¼­ Á¦°ÅµÈ´Ù.
• FirstAvailableIdenticalAllProxies : FirstAvailable¹æ½Ä°ú µ¿ÀÏÇϳª ¼±ÅÃµÈ ¼­¹ö´Â ´Ù¸¥ Ŭ¶óÀÌ¾ðÆ®µµ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

Farming
Ŭ·¯½ºÅ͸µ ȯ°æ¿¡¼­ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¹èÆ÷ ÇÏ´Â »óȲÀ» »ó»óÇØº¸ÀÚ. ÇϳªÀÇ ÆÄƼ¼Ç¿¡ A, B, C ¼­¹ö°¡ ÀÖÀ» ¶§ A, B, C ¼ø¼­·Î ¾ÖÇø®ÄÉÀ̼ÇÀ» ¹èÆ÷ ÇÑ´Ù¸é AºÎÅÍ C±îÁö ¸ðµÎ ¹èÆ÷ÇÒ µ¿¾È ¸ðµç ¼­¹ö°¡ µ¿ÀÏÇÑ ¼­ºñ½º¸¦ Á¦°øÇÒ ¼ö ¾ø´Ù. ¿Ö³ÄÇÏ¸é ¾ÖÇø®ÄÉÀ̼ÇÀÌ A, B, C ¼ø¼­·Î ¼­ºñ½ºµÇ±â ¶§¹®ÀÌ´Ù.

±×·¸´Ù°í ¼­¹ö¸¦ ¸ðµÎ Á¾·áÇÏ°í ¹èÆ÷ÇÑ ÈÄ ´Ù½Ã ±âµ¿ÇÏ´Â ¹«¸ðÇÑ ½Ãµµ¸¦ ÇÒ ¼ö´Â ¾ø´Â ÀÏÀÌ´Ù. ¹«Áß´Ü ¿î¿µÀÌ º¸ÀåµÇ¾î¾ß ÇÏ´Â ¼­ºñ½ºÀÇ °æ¿ì¿¡´Â ƯÈ÷ ´õ ±×·¸´Ù. ¾Æ¹«Æ° ÀÌ·± Å¿¿¡ n°³ÀÇ ¼­¹ö°¡ ÀÖÀ» °æ¿ì ¾ÖÇø®ÄÉÀ̼ǵµ n¹ø ¹èÆ÷ÇØ¾ß ÇÏ´Â ºÎ´ãÀÌ »ý±ä´Ù.

JBoss´Â ÀÌ·± »óȲÀ» À§ÇØ FarmingÀ̶õ ±â¼úÀ» Á¦°øÇÑ´Ù. JBossÀÇ /farm µð·ºÅ丮¿¡ ÆÐŰ¡µÈ ¾ÖÇø®ÄÉÀÌ¼Ç ÆÄÀÏÀ» º¹»çÇϸé JBoss´Â ÀÚµ¿ÀûÀ¸·Î ÆÄƼ¼Ç ³»ÀÇ ´Ù¸¥ ¼­¹öµé¿¡°Ô ¹èÆ÷ÇÑ ÆÐŰÁö ÆÄÀÏÀ» º¹Á¦ÇØÁØ´Ù.

HA-JNDI Lookup
Áö±Ý±îÁö JGroups¸¦ ±â¹ÝÀ¸·Î ÇÑ JBossÀÇ º¹Á¦¿¡ ´ëÇØ¼­ ÀåȲÇÑ ¼Ò°³¸¦ Çß´Ù. Ŭ·¯½ºÅ͸µÀ» Á¦°øÇϱâ À§ÇÑ ±âº» ±â´ÉÀÌ ¸ðµç ¼­¹öÀÇ »óŸ¦ µ¿±âÈ­ ÇÏ´Â °ÍÀ̱⿡ µ¿±âÈ­ÀÇ ¼ö´ÜÀ¸·Î º¹Á¦¸¦ »ç¿ëÇÑ´Ù. ÇÏÁö¸¸ JBoss°¡ º¹Á¦ÇÏÁö ¾Ê´Â °ÍÀÌ ÀÖ´Ù. ¹Ù·Î JNDI ¼­ºñ½º´Ù. ÇÏÀ̹ö³×ÀÌÆ® ij½Ã¿Í JNDI Æ®¸®¿¡ ´ëÇØ¼­ »ý°¢Çغ¸ÀÚ.

ÇÏÀ̹ö³×ÀÌÆ® ij½Ã¿¡ ÀúÀåµÈ °´Ã¼´Â DB¿¡ insert³ª update¸¦ ¸¹ÀÌ ÇÒ¼ö·Ï »óÅ º¯È­°¡ ÀÚÁÖ ÀÌ·ïÁø´Ù. ±×¸¸Å­ º¹Á¦°¡ ÀÌ·ïÁø´Ù. ÇÏÁö¸¸ JNDIÀÇ °æ¿ì ÀÏ´Ü ¼­¹ö°¡ ±âµ¿µÇ°í ¾à°£ÀÇ ½Ã°£ÀÌ È帣¸é JNDI Æ®¸®¿¡ µî·ÏµÈ °´Ã¼´Â ±×´ÙÁö »óŸ¦ º¯°æÇÏÁö ¾Ê´Â´Ù. ¾Æ¸¶µµ ÀÌ·± ¿¬À¯¿¡¼­ ±»ÀÌ Àß º¯°æµÇÁö ¾Ê´Â Á¤º¸µéÀº º¹Á¦ÇÏÁö ¾Ê´Â µíÇÏ´Ù.

ÇÏÁö¸¸ A ¼­¹ö ³»ÀÇ Å¬¶óÀÌ¾ðÆ®°¡ B ¼­¹ö ³»ÀÇ EJB¸¦ È£ÃâÇÒ ¶§ A ¼­¹öÀÇ Å¬¶óÀÌ¾ðÆ®´Â B ¼­¹öÀÇ EJBÀÇ ½ºÅÓÀ» °¡Á®¿Í¾ß ÇÑ´Ù. À̶§ A ¼­¹ö´Â B ¼­¹öÀÇ JNDI¸¦ ÅëÇØ B ¼­¹öÀÇ EJB ½ºÅÓÀ» °¡Á®¿Ã ¼ö ÀÖ´Ù.

Ŭ·¯½ºÅ͸µ ÇÏ¿¡¼­ JBoss´Â HA-JNDI((High Available-JNDI)¶ó´Â º°µµÀÇ JNDI ¼­ºñ½º¸¦ Á¦°øÇÑ´Ù. HA-JNDI´Â Ŭ·¯½ºÅ͸µ ³»ÀÇ °¢ ¼­¹ö¿¡°Ô ÀÚ½ÅÀÌ Ã£°íÀÚ ÇÏ´Â °´Ã¼ÀÇ ½ºÅÓÀ» °Ë»öÇÏ´Â ±â´ÉÀ» ´ã´çÇÑ´Ù. ¿ªÀ¸·Î HA-JNDI´Â ´Ù¸¥ ¼­¹öÀÇ HA-JNDI°¡ ÀÚ½ÅÀÇ JNDI¸¦ °Ë»öÇÒ ¶§ °Ë»öÀ» ´ëÇàÇØÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù.

<±×¸² 8> JBoss ºôµù ºí·Ï

<±×¸² 8>¿¡¼­ Ŭ¶óÀÌ¾ðÆ®°¡ ³ëµå 3¿¡ ÀÖ´Â EJBÀÇ ½ºÅÓÀ» ¾òÀ¸·Á°í ÇÑ´Ù. óÀ½¿¡ Ŭ¶óÀÌ¾ðÆ®´Â ³ëµå 2ÀÇ HA-JNDI¿¡°Ô LookupÀ» ½ÃµµÇÑ´Ù. ³ëµå 2ÀÇ HA-JNDI´Â ³ëµå 2ÀÇ JNDI¿¡°Ô LookupÀ» Çϰí ãÁö ¸ø ÇÑ´Ù¸é, ³ëµå 2ÀÇ HA-JNDI´Â ´Ù½Ã ³ëµå 1ÀÇ HA-JNDI¿¡°Ô LookupÀ» ½ÃµµÇÑ´Ù.

ÀÌ·¸°Ô Ŭ¶óÀÌ¾ðÆ®°¡ ¿äûÇÑ EJBÀÇ ½ºÅÓÀ» ãÀ» ¶§±îÁö ÆÄƼ¼Ç ³»ÀÇ Àü ³ëµå¸¦ ¼øÈ¸ÇÏ¿© LookupÀ» ½ÃµµÇÑ´Ù. ÇÊÀÚ´Â ÀÌ ¸ðµ¨À» º¼ ¶§¸¶´Ù JGroups¸¦ ÅëÇØ ÇѲ¨¹ø¿¡ Àüü ³ëµå¿¡°Ô LookupÀ» ÇßÀ¸¸é ´õ¿í È¿À²ÀûÀ̾úÀ» °Í °°´Ù´Â »ý°¢ÀÌ µç´Ù.

»ç½Ç Ŭ·¯½ºÅ͸µÀº °³³äÀûÀÎ ºÎºÐµµ ¸¹°í ³»¿ëµµ ¹æ´ëÇØ¼­ °³¹ßÀÚµéÀÌ ±× ¿ø¸®¸¦ ´õ¿í ±Ã±ÝÇØ ÇÏ´Â ºÎºÐÀÌ´Ù. ÇÏÁö¸¸ ¾î¶°ÇÑ Å¬·¯½ºÅ͸µÀÌ´ø »ç¶÷ÀÌ °³¹ßÇÑ °ÍÀ̰í, ¸·»ó ±× ¿ø¸®¸¦ ¾Ë°í ³ª¸é ±×´ÙÁö ½Å±âÇÒ °Íµµ ¾ø´Ù. ÇÁ·¹ÀÓ¿öÅ©ÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÀÌÇØÇÏ´Â °Í°ú ÇÁ·¹ÀÓ¿öÅ©ÀÇ ³»ºÎ¸¦ ÀÌÇØÇÏ´Â °Íµµ ¸¶Âù°¡Áö´Ù.

¿äÁò °°Àº ¡®¿ÀǼҽº °úÀס¯ÀÇ ½Ã´ë¿¡´Â °øÂ¥·Î ¿ÀǼҽº °³¹ßÀÚÀÇ Áö½ÄÀ» ¡®º¹Á¦¡¯Çϱâ ÁÁÀº ȯ°æÀÎ µíÇÏ´Ù(¹°·Ð ¿ÀǼҽº ÇÁ·¹ÀÓ¿öÅ©ÀÇ ³»ºÎ ±¸Á¶¿¡ ´ëÇÑ ¹®¼­´Â Á»Ã³·³ ±¸ÇÏ±â ¾î·Æ´Ù). ¾Æ¹«Æ° ÇÁ·¹ÀÓ¿öÅ©´Â ±× ³»ºÎ¸¦ ¾Ë¼ö·Ï Àç¹ÌÀÖ°í, Á¦´ë·Î »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç ¹«¾ùº¸´Ù °³¹ßÀÚÀÇ ½Ç·ÂÀ» Çâ»ó½ÃŲ´Ù´Â °ÍÀº Ʋ¸²¾ø´Â »ç½ÇÀÌ´Ù.

ÇÁ·¹ÀÓ¿öÅ©ÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÀÌÇØÇÏ´Â °Í°ú ÇÁ·¹ÀÓ¿öÅ©ÀÇ ³»ºÎ¸¦ ÀÌÇØÇÏ´Â °ÍÀÇ Â÷ÀÌ´Â °á±¹ ¡®¾Ë±â À§ÇÑ ¿ë±â¡¯ÀÇ Â÷ÀÌ Á¤µµ ¹Û¿¡ µÇÁö ¾ÊÀ» °ÍÀÌ´Ù.

  ÇÁ·¹ÀÓ¿öÅ© Ȱ¿ë Àü¼ú

ACE/TAO ¹× ¿©·¯ ¹Ìµé¿þ¾î¿Í ÇÁ·¹ÀÓ¿öÅ©¸¦ ¾ÆÅ°ÅØÃ³ÇÑ ´õ±Û¶ó½º ½´¹ÌÃ÷ ±³¼ö´Â ÇÁ·¹ÀÓ¿öÅ©¸¦ »ç¿ëÇϴµ¥ ÀÖ¾î »ó´çÇÑ ½Ã°£À» ÅõÀÚÇØ¾ß ÇÑ´Ù°í ÁÖÀåÇÑ´Ù. º¸Åë ÇϳªÀÇ ÇÁ·¹ÀÓ¿öÅ©¸¦ ÇÁ·ÎÁ§Æ®¿¡ µµÀÔÇϸé ù ¹øÂ° ÇÁ·ÎÁ§Æ®¿¡¼­´Â »ç¿ë¹ýÀ» ÀÍÈ÷´Â ¼öÁØÀ¸·Î ÇÁ·¹ÀÓ¿öÅ©¸¦ ÀÌ¿ëÇÏ°Ô µÈ´Ù.

µÎ ¹øÂ° ÇÁ·ÎÁ§Æ®¿¡¼­´Â º£½ºÆ® ÇÁ·¢Æ¼½º¿Í »ç¿ë °¡À̵å¶óÀÎÀ» ¹ß°ßÇÏ°Ô µÇ°í ¼¼ ¹øÂ° ÇÁ·ÎÁ§Æ®¿¡¼­¾ß ºñ·Î¼Ò ÇÁ·¹ÀÓ¿öÅ©¸¦ ´É¼÷È÷ »ç¿ëÇÒ ¼ö ÀÖ´Ù°í ÇÑ´Ù. °³ÀÎÂ÷°¡ ÀÖ°ÚÁö¸¸ ÇÁ·¹ÀÓ¿öÅ©¸¦ ´É¼÷ÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖÀ¸·Á¸é 1³â¿¡ °¡±î¿î ÇнÀ ±â°£ÀÌ ÇÊ¿äÇÏ´Ù°í ÇÑ´Ù.

ÇÏÁö¸¸ ¿ì¸®°¡ °æÇèÇÏ´Â ´ëºÎºÐÀÇ ÇÁ·ÎÁ§Æ®¿¡¼­´Â Ã¥À̳ª ¸Å´º¾óÀ» Á¤µ¶Çϰí, ¸î °³ÀÇ »ùÇÃÄڵ带 µû¶ó ÇØº¸°í, ¾à°£ÀÇ ¾ÈÀü¼ºÀ» Å×½ºÆ® ÇÑ ÈÄ °ð¹Ù·Î ÇÁ·¹ÀÓ¿öÅ©¸¦ µµÀÔÇÏ´Â °æ¿ì°¡ Çã´ÙÇÏ´Ù(»ç½Ç ÇÊÀÚÀÇ °æÇè¿¡ µû¸£¸é À̺¸´Ù ÈξÀ ÀûÀº ³ë·ÂÀ» Èñ»ýÇÑ´Ù).

¹°·Ð ȯ°æÀû Á¦¾à¿¡ ÀÇÇØ¼­ ÃæºÐÇÑ ½Ã°£À» ÅõÀÚÇÒ ¼ö ¾ø¾úÁö¸¸ ½À°üÀûÀ¸·Î ÇÁ·¹ÀÓ¿öÅ© ÇнÀ¿¡ ´ëÇÑ ÅõÀÚ¸¦ °ÔÀ»¸® ÇÏ´Â °æÇâÀÌ ÀÖ´Ù. ÀÌ·¸°Ô »ç¿ëµÈ ÇÁ·¹ÀÓ¿öÅ©´Â óÀ½¿¡ ¹ß°ßÇÏÁö ¸øÇÑ ¹®Á¦·Î ÇÁ·ÎÁ§Æ® Áß, ÈĹݿ¡ °ñÄ©°Å¸®·Î Àü¶ôÇÏ´Â °æ¿ì°¡ ¸¹´Ù. ÇÁ·¹ÀÓ¿öÅ©¸¦ ÃæºÐÈ÷ ÀÌÇØÇÏÁö ¾Ê°í ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇÑ Å¿ÀÌ´Ù.

ÇÁ·¹ÀÓ¿öÅ©¿¡ ´ëÇÑ ÃæºÐÇÑ ÀÌÇØ°¡ ¾øÀ¸´Ï ÃÖÀûÈ­µÈ »ç¿ëÀ» ÇÒ ¼ö ¾øÀ»»Ó´õ·¯, ÇÁ·¹ÀÓ¿öÅ© ±Ô¸ð¿¡ ºñÇØ ³Ê¹« ÀûÀº ÀϺΠ±â´É¸¸ »ç¿ëÇÏ´Â °æ¿ìµµ Çã´ÙÇÏ´Ù. ÇÁ·¹ÀÓ¿öÅ©¸¦ µµÀÔÇϱâ Àü¿¡ ÃæºÐÇÑ ½Ã°£ ÅõÀÚ°¡ ÇÊ¿äÇÏ´Ù.

JBoss´Â ±× ÀÚü·Îµµ ÈǸ¢ÇÑ ÇÁ·¹ÀÓ¿öÅ©Áö¸¸, JBoss ³»ºÎÀÇ ¼­ºê ÇÁ·¹ÀÓ¿öÅ©µµ È¿¿ë°¡Ä¡°¡ ÃæºÐÈ÷ ³ô´Ù. JBossCache, JGroups, JBoss Remoting µî °³°³ÀÇ ÇÁ·¹ÀÓ¿öÅ©·Îµµ »ó´çÈ÷ °­·ÂÇÑ ±â´ÉÀ» ÇÏ´Â °ÍµéÀÌ JBoss ÇÁ·ÎÁ§Æ®¿¡´Â ¸¹ÀÌ ÀÖ´Ù. ÇÊÀÚ´Â JBossÀÇ ³»ºÎ ±¸Á¶¸¦ °øºÎÇϸ鼭 JBoss º¸´Ù JBoss ³»ºÎÀÇ °³°³ÀÇ ÇÁ·¹ÀÓ¿öÅ©¿¡ ´õ Å« ¸Å·ÂÀ» ´À²¼´Ù.

JBoss´Â ÀÌ·± °³º° ÇÁ·¹ÀÓ¿öÅ©µéÀÌ À̸ÓÀü½º µÇ¾î ºôµù ºí·ÏÀÇ ÁýÇÕü°¡ µÈ °ÍÀÌ´Ù. ÀÌ ¸ðµ¨Àº JBoss¸¦ »ç¿ëÇÏ´Â ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀÚ¿¡°Ôµµ Àǹ̽ÉÀåÇÑ ¸Þ½ÃÁö¸¦ Àü´ÞÇÑ´Ù. ¿ì¸®µµ JBoss¸¦ ÀÌ¿ëÇÏ¿© ´õ ¿Ï¼ºµÈ ºÎ°¡°¡Ä¡¸¦ °®´Â ¹«¾ùÀ» ¸¸µé ¼ö Àֱ⠶§¹®ÀÌ´Ù.

´ÜÁö ¿ì¸®°¡ ¿°µÎÇØ¾ß ÇÒ °ÍÀº »ç¿ëÇÒ ÇÁ·¹ÀÓ¿öÅ©¸¦ ÃæºÐÈ÷ ÀÌÇØÇÏ¿© ±× ÇÁ·¹ÀÓ¿öÅ©¿Í ³ªÀÇ Äڵ带 Á¶ÇÕÇÏ¿© â¹ßÀ» ¸¸µé¾î ³»·Á´Â ³ë·ÂÀ» ÀØÁö ¾Ê´Â °ÍÀÌ´Ù. @


* ÀÌ ±â»ç´Â ZDNet KoreaÀÇ Á¦ÈÞ¸ÅüÀÎ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿þ¾î¿¡ °ÔÀçµÈ ³»¿ëÀÔ´Ï´Ù.
°ü·Ã±â»ç
½Ç¹ö¶óÀÌÆ® Ȱ¿ë¹ý
ÇÁ·¹ÀÓ¿öÅ© Ȱ¿ëÀü·«
¡°°æÀïÀº ¾ø´Ù. ¾ÕÀ¸·Î ³ª¾Æ°¥ »ÓÀÌ´Ù.¡±
µ¶ÀÚÀÇ°ß ³²±â±â (·Î±×ÀÎ ÈÄ µ¶ÀÚ ÀǰßÀ» ³²±â½Ç ¼ö ÀÖ½À´Ï´Ù.)
¾ÆÀ̵ð ºñ¹Ð¹øÈ£
 
 
?>
[DDD ¨ç] µµ¸ÞÀÎ ÁÖµµ °³¹ß
À©µµ¿ìCE µð¹ö±ë¿¡ °üÇÑ 12°¡Áö...
'°¡»óÈ­ °ü¸®'¿¡ ´ëÇÑ 10°¡Áö ...
[±â°í]±×¸° ½ºÅ丮Áö·Î °¡´Â±æ
°¡»óÈ­¿¡ ½ÇÆÐÇÏ´Â 10°¡Áö ÀÌÀ¯
[Ã¥¼Ò°³] À¥ °³¹ßÀÚ¸¦ À§ÇÑ ½ºÇÁ...
À¥ ÀÎÅÍÆäÀ̽º¸¦ ÀÌ¿ëÇÑ ÆÐÅ¶Ææ½º
ÄÚ´Ú ÄÞÆÑÆ® µðÄ«,'ÅÍÄ¡¼¾¼­'·Î ¹Ù²Ù´Ï¡¦À¯Àúµé "Àú¿ä! Àú¿ä!" [00:04:05]
ÁøÇà ·ùÁØ¿µ ±âÀÚ, Á¦ÀÛ À¯È¸Çö PD
[Weekend TV]'½ºÅ¸Å©·¡ÇÁÆ®' ¼º´ë¸ð»çÀÇ ´ÞÀÎ [00:01:20]
ÁøÇà ·ùÁØ¿µ ±âÀÚ, Á¦ÀÛ À¯È¸Çö PD
º¸¾È°­È­ ±¸±Û ¡°À©µµ ¹ö¸®°í À¥À¸...
¡®À©µµXP¡¯½Ã´ë Æó¸·, »ç¿ëÀÚ¿¡°Ô...
¡®³ªÈ¦·Î ¾×ƼºêX¡¯¡¦¼¼°è ÀÎÅͳݰú...
ÀÎÅÍ³Ý ¹ðÅ· ºê¶ó¿ìÀú´Â µû·Î ÀÖ´Ù...
SKT µ¶Á¡ 800MHz Á֯ļö,...
ÃÖÈÖ¿µ NHN ´ëÇ¥ ¡°°Ë»ö¾î ¼øÀ§...
[Àλç]¹®È­Ã¼À°°ü±¤ºÎ
BT, 'GSM-CDMA Áö¿ø' ...
SKT '¾ÆÀ̽º¹Ú½º', ÅëÇÕ UC...
2011³â, LCD TV 10´ë ...
´Ù¿ì±â¼ú, À̸ÞÀÏ ¾ÆÄ«À̺ù ¼Ö·ç¼Ç...
 
 
The Korean edition of 'ZDNet' is published under license from CNET Networks, Inc., San Francisco, CA, USA. Editorial items appearing in 'ZDNet Korea' that were originally published in the US Edition of 'ZDNet', 'CNET', and 'CNET News.com' are the copyright properties of CNET Networks, Inc. or its suppliers.
Copyright ¨Ï 2008 CNET Networks, Inc. All Rights Reserved. 'ZDNet', 'CNET' and 'CNET News.com' are trademarks of CNET Networks, Inc.