ObjectWeb ±â¹ÝÀÇ ½Ã½ºÅÛ ÅëÇÕ ±â¼ú

¹ÚÀçÇö , ÇÑ»ó¸¸
°æ±âµµ ¿ëÀνà ±¸¼º¸é ¸¶ºÏ¸® »ê1-1
Çö´ëÁ¤º¸±â¼ú(ÁÖ) Á¤º¸±â¼ú¿¬±¸¼Ò µ¥ÀÌŸ¿þ¾îÇÏ¿ì¡ÆÀ
E-mail : jhpark@shinbiro.com, smhan@shinbiro.com
URL : http://www.shinbiro.com/~jhpark
Abstract:
ÇöÀç WWW(World Wide Web)À» ±â¹ÝÀ¸·Î ÇÑ ÀÎÅÍ³Ý ¼­ºñ½º´Â ÀÏ´ë º¯È¯±â¸¦ ¸ÂÀÌ Çϰí ÀÖ´Ù. À¥Å¬¶óÀÌ¾ðÆ®³ª ±âŸ ÀÎÅÍ³Ý Åë½Å ¼­ºñ½º¿ë ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ß¿¡¼­ ÄÁÅÙÆ® ¼­ºñ½º·Î ¹ßÀüÇϰí ÀÖ´Â °ÍÀÌ´Ù. ƯÈ÷ °³¹ßµÇ´Â ÄÁÅÙÆ®µéµµ ±âÁ¸ÀÇ CGI(Common Gateway Interface)³ª BGI(Binary Gateway Interface)¸¦ ±â¹ÝÀ¸·Î ÇÑ µ¥ÀÌŸº£À̽º ¿¬µ¿ ÄÁÅÙÆ®¿¡¼­ ±â¾÷ÀÇ »çȰÀÌ °É¸°(mission-critical) ´ë±Ô¸ðÀÇ ¿£ÅÍÇÁ¶óÀÌÁî ÄÁÅÙÆ®µé·Î ¼Ó¼Ó ÀüȯµÇ°í ÀÖ´Ù. ÀÌ·¯ÇÑ È¯°æÇÏ¿¡¼­ ±âÁ¸ÀÇ CGI¿Í ÀÌÀÇ º¸¿Ï ¹æ¹ýÀÎ ³Ý½ºÄÉÀÌÇÁ»çÀÇ NSAPI(Nestscape API)¿Í ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ISAPI(Internet Information Server API)°°Àº °³¹ß¹æ½ÄÀº ¿£ÅÍÇÁ¶óÀÌÁî ÄÁÅÙÆ®¸¦ °³¹ßÇÏ´Â µ¥ ÀÖ¾î ¸¹Àº ¹®Á¦Á¡À» ³»Æ÷Çϰí ÀÖ´Ù. ÀÌ·± ¹è°æÇÏ¿¡¼­ °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓÀ» ±Ù°£À¸·Î ÇÏ´Â CORBA(Common Object Request Broker)¿Í WWWÀÇ ÅëÇÕȯ°æÀº ¾Õ¼± ¹æ¹ýµéÀÇ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Ù. ƯÈ÷ ÀÎÅÍ³Ý ¸ðºô ÄÚµå ÆÐ·¯´ÙÀÓÀ» Á¦°øÇØÁÖ´Â ÀÚ¹Ù ¾ð¾î·ÎÀÇ CORBA ¸ÅÇÎÀº WWW»ó¿¡¼­ µ¥ÀÌŸ¿þ¾îÇϿ조ú °°Àº ¿£ÅÍÇÁ¶óÀÌÁî ÄÁÅÙÆ®¸¦ °³¹ßÇÏ´Â µ¥ ¸¹Àº À¯¿¬¼ºÀ» Á¦°øÇØÁØ´Ù. ÀÌ ±Û¿¡¼­´Â CORBA, Java¸¦ ±Ù°£À¸·Î ÇÑ WWW ÅëÇÕ ±â¼ú°ú Àû¿ë ¹æ¹ý¿¡ ´ëÇØ »ìÆìº»´Ù.
Keywords:
CORBA , CGI , Data Warehousing , Java , Middleware , Object , WWW

1. ¼­·Ð

ÀÎÅͳÝ, ƯÈ÷ WWWÀÇ Æø¹ßÀûÀÎ ¼ºÀåÀº ¼ÒÇÁÆ®¿þ¾î ºÐ¾ß¿¡¼­ ±Û·Î¹ú ¼­ºñ½º¶ó´Â »õ·Î¿î ÆÐ·¯´ÙÀÓÀ» Á¦½ÃÇÏ¿´´Ù. ÀÌ ÆÐ·¯´ÙÀÓÀº ±âÁ¸ÀÇ ÀÀ¿ë ¼­ºñ½ºµéÀÇ ¼­ºñ½º Á¦°ø¹üÀ§¸¦ ¼Ò±Ô¸ð LANȯ°æÇÏ¿¡¼­ Àü¼¼°è¸¦ ±Ù°£À¸·Î ÇÑ ±Û·Î¹ú ¼­ºñ½º·ÎÀÇ È®ÀåÀ» ÀǹÌÇÑ´Ù. ±Û·Î¹ú ¼­ºñ½º´Â ÇöÀçÀÇ Á¤º¸½Ã½ºÅÛ¿¡¼­ ¿ä±¸Çϰí ÀÖ´Â ÆÐ·¯´ÙÀÓÀÌ´Ù. ¿Ö³ÄÇϸé ÇöÀçÀÇ ±â¾÷ ȯ°æÀº ±¹°¡¿Í ±¹°æÀ» ÃÊ¿ùÇÑ ±Û·Î¹ú °æ¿µ°ú Á¶Á÷À¸·Î ¹ßÀüÇϰí Àֱ⠋š¹®ÀÌ´Ù. µû¶ó¼­ ÀÌ·±ÇÑ È¯°æº¯È­¿¡ ´Éµ¿ÀûÀ¸·Î ´ëóÇϱâ À§ÇØ ±Û·Î¹ú ȯ°æÀ» Áö¿øÇÏ´Â »õ·Î¿î ÇüÅÂÀÇ Á¤º¸ °ü¸® ½Ã½ºÅÛÀÌ ÇÊ¿äÇÏ°Ô µÈ´Ù. ´ÙÀ½Àº ÇöÀçÀÇ È¯°æ¿¡¼­ ÇÊ¿ä·Î Çϰí ÀÖ´Â Á¤º¸ ½Ã½ºÅÛÀÇ ¸ð½ÀÀÌ´Ù.

"Á¤º¸ ½Ã½ºÅÛÀº Á¶Á÷À̳ª ±â°üÀÇ Á¤º¸Ã³¸® °úÁ¤°ú °æ¿µ öÇÐÀ» Áö¿øÇÔ¿¡ ÀÖ¾î Áö¸®ÀûÀ¸·Î ºÐ»êµÇ°í ÀÌÁ¾ÀÎ Á¤º¸ ÀÚ¿øÀ» º¸´Ù ½±°í , ¾ÈÁ¤µÇ°í, ÀϰüµÈ ¹æ¹ýÀ¸·Î °ü¸®ÇØ¾ß ÇÑ´Ù.[jhpark96] "

ÀÌ·¯ÇÑ Á¤º¸ ½Ã½ºÅÛÀº ´ÙÀ½ÀÇ ±â´ÉµéÀ» º¸ÀåÇØ¾ß ÇÑ´Ù.

»ç¿ëÀÚ ÀÎÅÍÆäÀ̽º Ãø¸é¿¡¼­ »ç¿ëÇϱ⠽¬¿ö¾ß Çϰí Á÷°üÀûÀ¸·Î »ç¿ë°¡´ÉÇØ¾ß ÇÑ´Ù. ¶ÇÇÑ »ç¿ëÀÚÀÇ ¿ä±¸»çÇ׿¡ µû¶ó ÀûÀýÈ÷ ¿øÇÏ´Â Á¤º¸¸¦ ¼±ÅÃÀûÀ¸·Î ÃëÇÕÇÒ ¼ö ÀÖ´Â ±â´ÉµéÀ» Á¦°øÇØ¾ß ÇÑ´Ù. ¶ÇÇÑ
½Ã½ºÅÛ Ãø¸é ¿¡¼­ ±âÁ¸ÀÇ ½Ã½ºÅÛµé°ú ½±°Ô ÅëÇյǰųª ÅëÇÕÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀ̽º¸¦ Áö¿øÇØ¾ß ÇÏ¸ç ±âÁ¸ÀÇ ½Ã½ºÅÛº¸´Ù ºü¸£°Å³ª ÃÖ¼ÒÇÑ µ¿µîÇÑ ¼º´ÉÀ» º¸ÀåÇØ¾ß ÇÑ´Ù. ¾Æ¿ï·¯ ½Ã½ºÅÛ°ú Á¤º¸¿¡ ´ëÇÑ ¸ðµç Á¢±Ù°ú ÅëÀÏµÈ ¹æ¹ýÀ¸·Î °ü¸®µÇ¸ç ÇÕ¹ýÀûÀ̾î¾ß ÇÑ´Ù.
Á¤º¸ Ãø¸é ¿¡¼­ ±â¾÷ÀÇ »ý»ê Ȱµ¿À» Áö¿øÇÒ ¼ö ÀÖ´Â ½Å¼±ÇÑ Á¤º¸°¡ Áö¼ÓÀûÀ¸·Î °ø±ÞµÇ°í ÇØ´ç Á¤º¸¸¦ ÀûÀýÈ÷ °¡°øÇϱâ À§ÇÑ ÀÀ¿ë ¼­ºñ½º°¡ Áö¿øµÅ¾ß Çϸç , Á¤º¸ ÀÚüÀÇ ¾ÈÁ¤¼º°ú ¹«°á¼ºÀ» º¸ÀåÇØ¾ß ÇÑ´Ù. ¸¶Áö¸·À¸·Î
±â¾÷ Ãø¸é ¿¡¼­´Â ÇØ´ç Á¤º¸ ½Ã½ºÅÛÀº Á¶Á÷ÀÇ º¯È­¿¡ ´Éµ¿ÀûÀ¸·Î À籸¼º°¡´ÉÇϸç ÇØ´ç Á¶Á÷ÀÇ È¯°æÀ̳ª ¹®È­¿¡ ÀûÇÕÇÏ°Ô ±¸Ãà, ¿î¿µµÅ¾ß ÇÏ¸ç ±Û·Î¹ú ³×Æ®¿÷ ȯ°æÀ» Áö¿øÇØ¾ß ÇÑ´Ù.

ÀÌ·¯ÇÑ ½Ã½ºÅÛÀ» ±¸ÃàÇϱâ À§ÇÑ °¢ ºÐ¾ßÀÇ ³ë·ÂµéÀº ´ÙÀ½°ú °°´Ù.

¸ÕÀú ½Ã½ºÅÛ Ãø¸é¿¡¼­ ÀÌÁ¾ÀÇ ´Ù¾çÇÑ ½Ã½ºÅÛÀ» ½±°Ô ÅëÇÕÇϰí À̵éÀ» ÀϰüµÈ ¹æ¹ýÀ¸·Î °³¹ßÇϱâ À§ÇÑ ³ë·ÂÀ¸·Î ´Ù¾çÇÑ ¹Ìµé¿þ¾î ¼Ö·ç¼Ç [orfali96] [tresch96]À» µé ¼ö ÀÖ´Ù. Ãʱ⠴ëºÎºÐÀÇ Á¤º¸½Ã½ºÅÛÀº ¸ÞÀÎÇÁ·¹ÀÓÀ» Áß½ÉÀ¸·Î ÇÑ Áß¾ÓÁýÁß ¹æ½ÄÀ̾ú´Ù. ÀÌ ¹æ½ÄÀº Áß¾ÓÀÇ ½Ã½ºÅÛ¿¡ ¸ðµç ÀÛ¾÷ÀÌ ÁýÁߵǴ ¹®Á¦¸¦ ÃÊ·¡Çß´Ù. µû¶ó¼­ ÀÌ ¹æ¹ýÀ» äÅÃÇÑ °÷¿¡¼­´Â Áß¾Ó ½Ã½ºÅÛÀ¸·Î °ªºñ½Ñ IBM È£½ºÆ®°°Àº ´ëÇü ÄÄÇ»Å͸¦ »ç¿ëÇØ¾ß¸¸ ÇßÀ¸¸ç Áß¾ÓÀÇ ÄÄÇ»ÅÍ¿¡ ¸ðµç ÀÛ¾÷ºÎÇϰ¡ °É¸®´Â ¹®Á¦¸¦ ÃÊ·¡Çß´Ù. ÀÌ·¯ÇÑ ¹®Á¦µéÀ» ÇØ°áÇϰíÀÚ Á¦¾ÈµÈ ¹æ¹ýÀÌ ÀÏÁ¤ÇÏ°Ô ÀÛ¾÷À» ºÐ¹èÇÏ¿© Çùµ¿ÇÏ´Â ½Ã½ºÅÛ ¸ðµ¨ÀÎ ºÐ»ê ÄÄÇ»ÆÃ ½Ã½ºÅÛÀÌ´Ù. ºÐ»ê ÄÄÇ»ÆÃ ½Ã½ºÅÛÀº ´ëÇü ÄÄÇ»Å͸¦ ÀÌ¿ëÇÏÁö ¾Ê°í À¯´Ð½º°°ÀÌ ´ëÇü ÄÄÇ»ÅÍ¿¡ ºñÇØ »ó´ëÀûÀ¸·Î °ªÀÌ ½Ñ ÁßÇü ÄÄÇ»Å͵鿡°Ô ÀÏÀ» ÀûÀýÈ÷ ºÐ¹èÇÏ¿© Ȱ¿ëÇÔÀ¸·Î½á ¸¹Àº È¿°ú¸¦ ¾ò¾ú´Ù. ÀÌ·¯ÇÑ ºÐ»ê ÄÄÇ»ÆÃ ½Ã½ºÅÛÀ» ±¸¼ºÇÏ´Â ´ëÇ¥ÀûÀÎ ±â¼úÀû ¹æ¹ýÀÌ Å¬¶óÀ̾ðÆ®/¼­¹ö ±â¼úÀÌ´Ù. ÀÌ ¹æ¹ýÀº »ó´ëÀûÀ¸·Î ¸¹Àº Ŭ¶óÀÌ¾ðÆ®µéÀÌ ¼­¹öÀÇ ÀÚ¿øÀ» ½±°Ô °øÀ¯ÇÒ ¼ö ÀÖÀ¸¸ç ³×Æ®¿÷À» ±â¹ÝÀ¸·Î Çϱ⠶§¹®¿¡ ÀûÁ¤ ±Ô¸ð·Î ½Ã½ºÅÛÀ» ±¸¼ºÇÒ ¼ö ÀÖ´Ù¶ó´Â ÀåÁ¡µéÀÌ ÀÖ´Ù. ±×·¯³ª ÀÌ ¹æ½Ä ¿ª½Ã ¼ö¸¹Àº ÀÌÁ¾ÀÇ ½Ã½ºÅÛÀ» ó¸®ÇÏ´Â µ¥ ÀÖ¾î ¸¹Àº ¹®Á¦µéÀ» ³»Æ÷Çϰí ÀÖ´Ù. ƯÈ÷ ¼­·Î ´Ù¸¥ Á¾·ùÀÇ ½Ã½ºÅÛÀ» Ãß°¡ÇÒ ¶§¸¶´Ù »õ·Î¿î ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇØ¾ß ¸¸ ÇÑ´Ù. ¿¹¸¦ µé¸é, ¼­·Î ´Ù¸¥ N°³ÀÇ Å¬¶óÀÌ¾ðÆ®¿Í M°³ÀÇ ¼­¹ö¸¦ ¿¬°áÇϱâ À§Çؼ­ ÇÁ·Î±×·¥¸Ó´Â N X M °³ÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇØ¾ß ¸¸ ÇÑ´Ù. ÀÌ·¯ÇÑ ´ÜÁ¡µéÀ» ±Øº¹ÇϰíÀÚ ³ª¿Â ÇØ°áÃ¥ÀÌ ¹Ù·Î ¹Ìµé¿þ¾î ¹æ¹ýÀÌ´Ù. ¹Ìµé¿þ¾î´Â Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö»çÀÌ¿¡ ºñÁö´Ï½º ·ÎÁ÷À» ó¸®ÇØÁÖ°í À̵é Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ¼­¹ö¿¡ ´ëÇÑ ÅëÀÏµÈ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇѱ⠶§¹®¿¡ ´Ù´Ü°è Ŭ¶óÀ̾ðÆ®/¼­¹ö ±¸Á¶¶ó°íµµ ÇÑ´Ù. ¹Ìµé¿þ¾î ±¸Á¶¸¦ »ç¿ëÇÏ¿© ±¸ÃàµÈ Á¤º¸½Ã½ºÅÛÀº ´Ù¾çÇÑ Á¤º¸½Ã½ºÅÛÀ» ÇϳªÀÇ ÀÎÅÍÆäÀ̽º·Î ÅëÇØ ó¸®ÇÒ ¼ö ÀÖÀ¸¸ç Á¤º¸½Ã½ºÅÛÀÇ ·ÎÁ÷À» ±¸Á¶ÀûÀ¸·Î Ãß»óÈ­½Ãų ¼ö Àֱ⠶§¹®¿¡ ¸¹Àº À¯¿¬¼ºÀ» Á¦°øÇÑ´Ù. ÀϹÝÀûÀ¸·Î ¹Ìµé¿þ¾î¿¡´Â DBMS ¼­¹öµéÀ» Áß¾Ó¿¡¼­ °ü¸®ÇØ ÁÖ´Â DBMS¹Ìµé¿þ¾î¿Í ¼­¹ö»çÀÌÀÇ Æ®·»Á§¼Ç°ú ·Îµå¹ß·£½ÌÀ» ÀûÀýÈ÷ Áö¿øÇØÁÖ´Â OLTP ¹Ìµé¿þ¾î , °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓÀ» ÅëÇØ ÅëÇÕ ½Ã½ºÅÛÀ» ±¸ÃàÇÏ°Ô ÇØÁÖ´Â CORBA[OMG96]°¡ ÀÖ´Ù. ÇöÀç ÀÌµé ¼Ö·ç¼ÇÀº ¸¹Àº ±â¾÷ÀÇ Á¤º¸½Ã½ºÅÛÀ» ±¸ÃàÇÏ´Â µ¥ Àû¿ëµÇ°í ÀÖ´Ù.

¶ÇÇÑ Á¤º¸Ãø¸é¿¡¼­´Â ºÐ»êµÈ ±â¾÷ÀÇ µ¥ÀÌŸº£À̽ºµéÀ» ÀûÀýÈ÷ ÅëÇÕÇÏ¿© ±â¾÷ÀÇ ÀÇ»ç°áÁ¤À» ºñ·ÔÇÏ¿© °¢Á¾ Áß¿ä °áÁ¤»çÇ׿¡ ÀÌ¿ëÇÏ°Ô ÇØÁÖ´Â µ¥ÀÌŸ¿þ¾îÇÏ¿ì¡ ±â¼úÀÌ È®»êµÇ°í ÀÖ´Ù[Inmon81]. ±âÁ¸ÀÇ ´Ü¼øÇÑ µ¥ÀÌŸ ó¸®À§ÁÖ¿¡¼­ º¸´Ù Àû±ØÀûÀ¸·Î Á¤º¸¸¦ °¡°øÇÏ·Á´Â ³ë·ÂÀÌ ¹Ù·Î µ¥ÀÌŸ¿þ¾î ÇÏ¿ì¡À̶õ ±¸Ãà ¹æ¹ý·ÐÀ¸·Î Ç¥ÃâµÈ °ÍÀÌ´Ù. ±×·¯³ª ÇöÀç ÀÌ ¹æ¹ý ¿ª½Ã ½Ç½Ã°£ µ¥ÀÌŸÀÇ ¹Ý¿µ¿©ºÎ¿Í ±âÁ¸ÀÇ µ¥ÀÌŸµé°ú µ¥ÀÌŸ¿þ¾î ÇϿ콺»ó¿¡ ÀÖ´Â µ¥ÀÌŸ »çÀÌÀÇ ºÒÀÏÄ¡¹× À¯Áö º¸¼ö»óÀÇ ¹®Á¦Á¡µéÀ» ³»Æ÷Çϰí ÀÖ´Ù. [jhpark97] [tresch96]

±â¾÷ÀÇ Ãø¸é¿¡¼­´Â Á¤º¸ÀÇ µ¥ÀÌŸ¿þ¾îÇÏ¿ì¡ȭ¿Í ¾Æ¿ï·¯ ±â¾÷ Á¶Á÷ÀÇ ±Û·Î¹úÈ­¿Í ±Þ¼ÓÇÑ ¸®¿£Áö´Ï¾î¸µ¿¡ ÀûÇÕÇÑ , ±Ô¸ðÁ¶Á¤ °¡´ÉÇÑ ½Ã½ºÅÛÀÇ ±¸ÃàÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ·¯ÇÑ ´ëÇ¥ÀûÀÎ ³ë·ÂÀº WWW ¶Ç´Â ÀÎÅÍ³Ý ±â¼úÀ» ±â¹ÝÀ¸·Î ÇÑ ÀÎÆ®¶ó³Ý°ú ÀͽºÆ®¶ó³Ý ±â¼úÀÌ´Ù. ÀÎÆ®¶ó³ÝÀº ±âÁ¸ÀÇ ±â¾÷ ¾÷¹«¿Í Á¤º¸ ½Ã½ºÅÛÀ» ÀÎÅÍ³Ý ±â¼ú, ƯÈ÷ WWW ±â¹ÝÀ¸·Î À籸ÃàÇÏ´Â °ÍÀ» ¸»Çϸç ÀͽºÆ®¶ó³ÝÀº ÀÎÆ®¶ó³ÝÀÇ ±Ô¸ð¿Í ¹üÀ§¸¦ Àü¼¼°è·Î È®ÀåÇÑ °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ·¯ÇÑ ±â¼úÀÇ ±â¹Ý¿¡´Â WWWÀÇ ¾ÈÁ¤¼º°ú ¾Æ¿ï·¯ Java°°Àº ÀÎÅÍ³Ý ¿£Áö´Ï¾î¸µ ¾ð¾îÀÇ È®»êÀ» µé ¼ö ÀÖ´Ù.

ÀÌµé ³ë·ÂµéÀº °³º°ÀûÀ¸·Î °æÁֵǴ °ÍÀº ¾Æ´Ï´Ù. ½ÇÁ¦ ¸ñÇ¥ ½Ã½ºÅÛÀ» ±¸ÃàÇϱâ À§Çؼ­´Â ´Ù¾çÇÑ Ãø¸é¿¡¼­ °³¹ßµÇ´Â ±â¼úµéÀ» ÅëÇÕÇØ¾ß ÇÑ´Ù. ÀÌ ÅëÇÕ±â¼úÀº ÇöÀç WWW°ú CORBA , ±×¸®°í Java¸¦ ±â¹ÝÀ¸·Î ÇÏ¿© ºñÁö´Ï½º ¼Ö·ç¼ÇÀ» °³¹ßÇÏ´Â °ÍÀ¸·Î ¸ð¾ÆÁö°í ÀÖ´Ù.[ashley96] [almasi96] [beitz95] [condict96] [merle96] ºñÁö´Ï½º ¼Ö·ç¼Ç¿¡´Â ±âÁ¸ÀÇ µ¥ÀÌŸ¿þ¾îÇÏ¿ì¡À» ºñ·ÔÇÏ¿© Àλç,ȸ°è ½Ã½ºÅÛó·³ ±â¾÷ÀÇ ´Ù¾çÇÑ Á¤º¸ ½Ã½ºÅÛÀ» Æ÷ÇÔÇϰí ÀÖ´Ù.
º» ±Û¿¡¼­´Â ÇâÈÄ Á¤º¸ ½Ã½ºÅÛ ±¸Ãà½Ã ±Ù°£ÀÌ µÉ WWW¿Í CORBA ±×¸®°í JavaÀÇ ÅëÇÕ±â¼úÀÎ ObjectWeb¿¡ ´ëÇØ »ìÆìº»´Ù.

2. °ü·Ã ¿¬±¸

2.1 WWWÀÇ °³¹ß ȯ°æ

Á¤º¸½Ã½ºÅÛÀÇ ±Ù°£ ±â¼ú·Î¼­ ÀÚ¸®¸Å±èÇϰí ÀÖ´Â WWWÀº ¾ÈÁ¤µÈ ÇÁ·ÎÅäÄÝÀ» ±â¹ÝÀ¸·Î ´Ù¾çÇÑ ¿ä±¸»çÇ×µéÀ» ¼ö¿ëÇÏ°í ±âÁ¸ÀÇ ½Ã½ºÅÛµéÀ» ÅëÇÕÇÏ¸ç ¹ßÀüÇØ¿À°í ÀÖ´Ù. 1994³â Ãʱâ WWWÀº HTTP(Hyper Text Transfer Protocol)°ú ÇÏÀÌÆÛÅØ½ºÆ® ÀÎÅÍÆäÀ̽º¸¦ ±â¹ÝÀ¸·Î ÅØ½ºÆ®³ª À̹ÌÁö, ¿Àµð¿ÀµîÀ» Æ÷ÇÔÇÏ´Â ¸ÖƼ¹Ìµð¾î HTML(Hyper Text Markp Language) ¹®¼­¸¦ Á¦°øÇØ ÁÖ¾ú´Ù. ÀÌÈÄ 1995³â¿¡ µé¾î WWW´Â ±âÁ¸ÀÇ µ¥ÀÌŸ³ª ÀÀ¿ë ÇÁ·Î±×·¥À» ¿¬µ¿ÇÏ°í º¸´Ù dzºÎÇÑ ¼­ºñ½º¸¦ Á¦°øÇϱâ À§ÇØ HTML¹®¼­³»¿¡ Ãʺ¸ÀûÀÎ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇØÁÖ´Â FORM ÅÂ±×¿Í À̸¦ ÅëÇØ Á¦ÃâµÈ »ç¿ëÀÚ ¿ä±¸»çÇ×À» ¿ÜºÎ ÀÀ¿ë ÇÁ·Î±×·¥°ú ¿¬µ¿ÇØÁÖ´Â CGI ¹æ½ÄÀ» ÅëÇØ ±âÁ¸ÀÇ ÀÀ¿ë ½Ã½ºÅÛ°ú ¿¬µ¿µÇ±â ½ÃÀÛÇß´Ù. ¾Æ¿ï·¯ Å×À̺íÀ» ºñ·ÔÇÏ¿© °­È­µÈ HTMLű׵é°ú º¸¾È±â´ÉÀÌ Ãß°¡µÇ¾ú´Ù. Áö±Ý±îÁöÀÇ WWWÀ» Á¤ÀûWWWÀ̶ó ºÎ¸¥´Ù. ±× ÀÌÀ¯´Â ÇѸ¶µð·Î WWWÀÇ HTTP ÇÁ·ÎÅäÄݷδ Áö¼ÓÀûÀÎ »óÅÂÁ¤º¸¸¦ À¯ÁöÇÏÁö ¸øÇÑ´Ù´Â µ¥ ±âÀÎÇÑ´Ù. À¥ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö»çÀÌ¿¡´Â ±â²¯ÇØ¾ß ÇѹøÀÇ ¿äû°ú ÀÌ¿¡ ´ëÇÑ ¼­ºñ½º Á¦°øÀÌ ÀÌ·ç¾îÁö¸ç ÀÌÈÄÀÇ ¿äûÀº »õ·Î¿î ¼¼¼ÇÀ¸·Î ¼³Á¤µÇ±â ¶§¹®¿¡ À¥ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö»çÀÌ¿¡ Áö¼ÓÀûÀÎ Æ®·»Á§¼ÇÀ» À¯ÁöÇÏÁö ¸øÇÑ´Ù. ÀÌ ´ÜÁ¡Àº ±â¾÷¿¡¼­ ¿ä±¸ÇÏ´Â ´ë±Ô¸ðÀÇ ½Ã½ºÅÛÀ» ±¸ÃàÀ» ºÒ°¡´ÉÇÏ°Ô ÇÑ´Ù[±×¸²1].

CGI¸¦ ÅëÇÑ À¥ °³¹ß ȯ°æ
[ ±×¸²1 ] CGI¸¦ ÅëÇÑ À¥ °³¹ß ȯ°æ

¹°·Ð ÀÌ¿¡ ´ëÇÑ º¸¿ÏÃ¥À¸·Î Äí±â(Cookies)¶ó ºÒ¸®´Â ¹æ¹ýÀÌ ÀÖÀ¸³ª ¾ÈÁ¤¼º°ú º¸¾ÈÃø¸é¿¡¼­ ¸¹Àº ¹®Á¦Á¡À» ³»Æ÷Çϰí ÀÖ´Ù. ÀÌ ¿Ü¿¡µµ ±âÁ¸ÀÇ CGI¹æ½ÄÀº ÇØ´ç À¥ Ŭ¶óÀ̾ðÆ®ÀÇ ¿äûÀÌ Á¦ÃâµÉ ¶§¸¶´Ù »õ·Î¿î ¼­¹ö¸¦ »ý¼ºÇϰí À̸¦ ÅëÇØ ¼­ºñ½º¸¦ Á¦°øÇÑ´Ù. µû¶ó¼­ ÀÌ °úÁ¤¿¡¼­ ¹ß»ýÇÏ´Â ÄÁÅØ½º ±³È¯(Context Switing) ºñ¿ëÀº À¥ Ŭ¶óÀ̾ðÀÇ ¿ä±¸°¡ ¸¹°í DBMSó·³ À¥°ú ¿¬µ¿µÇ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ¼­¹ö°¡ Å« °æ¿ì ±âÇϱ޼öÀûÀ¸·Î Áõ°¡ÇÑ´Ù. ÀÌ·¯ÇÑ ¹®Á¦Á¡À» ÇØ°áÇϰíÀÚ ³Ý½ºÄÉÀÌÇÁ³ª ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® °°Àº WWW ¼­¹ö °ø±Þ¾÷ÀÚ¿Í ¿À¶óŬÀ̳ª »çÀ̺£À̽º, À¯´ÏSQL°°Àº DBMS °ø±Þ¾÷ÀÚµéÀº ±×µé ÀÚ½ÅÀÇ ½Ã½ºÅÛ°ú WWWÀ» ÀûÀº ºñ¿ëÀ¸·Î ¿¬°èÇϱâ À§ÇÑ ¹æ¹ýÀ» Á¦°øÇϰí ÀÖ´Ù. ±×·¯³ª ÀÌ ¹æ¹ý¿ª½Ã CGI ¿Í WWW¼­¹ö ÀÚü°¡ °®°í ÀÖ´Â ÇѰ踦 ¹þ¾î³ªÁö ¸øÇÑ´Ù.

ÀÌ·¯ÇÑ ¼Ó¿¡¼­ 1996³â ¼±¸¶ÀÌÅ©·Î½Ã½ºÅÛ¿¡¼­ °³¹ßÇÑ ÀÚ¹Ù¶ó´Â °´Ã¼ÁöÇâ ÀÎÅÍÇÁ¸®ÅÍ ¾ð¾î´Â ±âÁ¸ÀÇ WWW¿¡ ´ëÈ­Çü ÀÀ¿ë ÇÁ·Î±×·¥À» Ãß°¡ÇÏ°í »óÅÂÁ¤º¸¸¦ À¯ÁöÇÒ ¼ö ÀÖ´Â °¡´É¼ºÀ» Á¦½ÃÇÏ¿´´Ù[±×¸²2]. ÀÌ ÈÄ, WWW´Â ÀÚ¹ÙÀÇ ÀÌ·¯ÇÑ ÀåÁ¡À» ¹Þ¾Æµé¿© ±âÁ¸ÀÇ Á¤ÀûWWW¿¡¼­ µ¿ÀûWWWÀ¸·Î º¯È¯Çϱ⠽ÃÀÛÇÑ´Ù. ÀÌ ½Ã±âÀÇ µ¿ÀûWWWÀÇ Æ¯Â¡Àº WWW ¼­¹ö¿¡ À§Ä¡½Ãų ¼ö ÀÖ´Â ¾ÖÇø´À̶ó´Â ÄÚµå¿Í ÀÌ Äڵ带 ÀÚ¹Ù°¡´ÉÇÑ À¥ ºê¶ó¿ìÁ®¸¦ ÅëÇØ ´Ù¿î·Îµå ¹ÞÀº ÈÄ À̸¦ ½ÇÇà½Ãų ¼ö ÀÖ´Â ¸ðºô ÄÚµå ȯ°æÀÌ´Ù. ÀÌÈÄ , 1997³â¿¡ À̸£·¯ WWW´Â ±âÁ¸ÀÇ ÀÚ¹Ù ±â¼ú¿Ü¿¡ Çϵå¿þ¾î³ª ¼ÒÇÁÆ®¿þ¾î¿¡ »ó°ü¾øÀÌ ÀÀ¿ë ÇÁ·Î±×·¥À» °³¹ßÇÏ°í ´Ù¾çÇÑ °³¹ß ¼­ºñ½º¸¦ ÀÌ¿ëÇÏ°Ô ÇØÁÖ´Â °´Ã¼ÁöÇ⠹̵é¿þ¾îÀÎ CORBA[OMG96]¸¦ ¼ö¿ëÇÏ°Ô µÇ¾ú´Ù. Á»´õ ÀÚ¼¼È÷ ¸»ÇÏÀÚ¸é CORBAÀÇ Ç¥ÁØ ÇÁ·ÎÅäÄÝÀÎ IIOP(Internet Inter-ORB Protocol)¿Í WWWÀÇ Ç¥ÁØ ÇÁ·ÎÅäÄÝÀÎ HTTPÀÇ ÅëÇÕ¿¡ ÀÇÇØ WWW»ó¿¡¼­ ÄÄÆ÷³ÍÆ® ¼­ºñ½º¸¦ °³¹ßÇϱâ À§ÇÑ Åä´ë¸¦ °®Ãß°Ô µÈ °ÍÀÌ´Ù. CORBA¿Ü¿¡µµ JAVAÀÇ ÄÞÆ÷³ÍÆ® ±â¼úÀÎ Java Beans³ª ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ÄÄÆ÷³ÍÆ® ±â¼úÀÎ ActiveX°¡ ±âÁ¸ WWWÀÇ È®ÀåÀ» À§ÇØ Àû±Ø äÅõǰí ÀÖ´Ù. À̵éÀ» ¹­¾î µ¿Àû WWW¶ó ÇÑ´Ù.

ÀÚ¹Ù¸¦ ÅëÇÑ À¥ °³¹ß ȯ°æ
[ ±×¸²2 ] Java¸¦ ÅëÇÑ À¥ °³¹ß ȯ°æ

ƯÈ÷ ÀÌ·¯ÇÑ ±â¼úÁß¿¡¼­ WWW°ú CORBA , ±×¸®°í CORBAÀÇ ÀÚ¹Ù ¸ÅÇÎÀº ÀÚ¹Ù¿¡¼­ Á¦°øÇÏ´Â ¸ðºô ÄÚµå ±â´É°ú CORBA¿¡¼­ Á¦°øÇÏ´Â °´Ã¼ ÄÄÆ÷³ÍÆ® ±â¼úÀ» Àû¿ëÇÏ¿© ´ë±Ô¸ðÀÇ ±â¾÷ Á¤º¸½Ã½ºÅÛÀ» ±âÁ¸ÀÇ WWW»ó¿¡¼­ ±¸ÃàÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ÀÌ·¸°Ô ±¸ÃàµÈ Á¤º¸ ½Ã½ºÅÛÀ» CORBA ºñÁö´Ï½º °´Ã¼¶ó Çϸç ÀÌ·¯ÇÑ °³¹ßȯ°æÀ» ObjectWeb À̶ó Á¤ÀÇÇÑ´Ù[orfali97]. [±×¸²3]Àº ¾Õ¼­ ¼³¸íÇÑ WWW °³¹ß ȯ°æÀÇ º¯È­¸¦ º¸¿©ÁØ´Ù.

www °³¹ß ȯ°æÀÇ º¯È­
[±×¸²3] WWW °³¹ß ȯ°æÀÇ º¯È­

3. ObjectWebÀÇ ±¸Á¶

3.1 CORBA¿Í WWWÀÇ ¿¬µ¿ ÇöȲ

Áö±Ý±îÁö CORBA¿Í WWW¸¦ ¿¬µ¿Çϱâ À§ÇÑ ¸¹Àº ¼±Çà ³ë·ÂµéÀÌ ÀÖ¾ú´Ù.[ashley96] [almasi96] [beitz95] [condict96] [merle96] ÀÌµé ¹æ¹ýÀº Å©°Ô ±âÁ¸ ½Ã½ºÅÛÀÇ ±¸Á¶¸¦ º¯°æÇÏÁö ¾Ê°í ±âÁ¸ÀÇ ±â´ÉÀ» È®ÀåÇÏ´Â ¹æ¹ý°ú ½Ã½ºÅÛ¿¡ º¯ÇüÀ» °¡ÇØ ¿¬µ¿ÇÏ´Â ¹æ¹ýÀ¸·Î ºÐ·ùÇÒ ¼ö ÀÖ´Ù.
ÀüÀÚÀÇ °æ¿ì, ±âÁ¸ÀÇ CGI¸¦ ÀÌ¿ëÇÏ¿© °ÔÀÌÆ®¿þÀ̸¦ ±¸¼ºÇÏ´Â ¹æ¹ý°ú HTTP ÇÁ·ÎÅäÄÝÀ» CORBA IIOPÇÁ·ÎÅäÄÝ·Î º¯°æÇØÁÖ´Â °ÔÀÌÆ®¿þÀ̸¦ ±¸¼ºÇÏ´Â ¹æ¹ý, ±×¸®°í ÀÚ¹Ù-CORBA ¸ÅÇÎ ¹æ¹ýÀÌ ÀÖ´Ù. CGI°ÔÀÌÆ®¿þÀÌÀÇ °æ¿ì, µðÁöÅ»ÀÇ Web Broker¿¡¼­ ±¸ÇöµÇ¾ú´Ù. ÀÌ ¹æ¹ýÀº ¿©ÀüÈ÷ CGIÀÇ ¹®Á¦¸¦ ³»Æ÷Çϰí ÀÖ´Ù. HTTP-to-IIOPÀÇ °æ¿ì ANSA[ashley96]¿Í ¿À¶óŬ¿¡¼­ »ç¿ëÇϰí ÀÖ´Ù. ÀÌ ¹æ¹ýÀº CORBA°¡ HTTP¸¦ ó¸®ÇÏ´Â ¿ªÇÒÀ» °®´Â °ÍÀ» ÀǹÌÇÑ´Ù.
¸¶Áö¸· ¹æ¹ýÀº ±âº»ÀÇ HTTP¿Í CORBA¸¦ °øÁ¸½ÃŰ´Â °ÍÀÌ´Ù. À¥ Ŭ¶óÀÌ¾ðÆ®´Â CORBA¿¡ ¼­ºñ½º¸¦ ¿äûÇϱâ À§ÇÑ ORB ±â´ÉÀ» °®°í ÀÖ°í ½ÇÇà½Ã¿¡ ¼­¹öÃø¿¡ ÀÚ¹Ù·Î ÀÛ¼ºµÈ CORBA ÀÀ¿ë ÇÁ·Î±×·¥À» ´Ù¿î·Îµå ¹ÞÀº ÈÄ À̸¦ ¼öÇà½ÃŲ´Ù. ÀÌ·¯ÇÑ ¾ÖÇø´À» ORBletÀ̶ó ÇÑ´Ù. ÀÌ ¹æ¹ýÀº Ãß°¡ÀûÀÎ °ÔÀÌÆ®¿þÀ̸¦ °³¹ßÇÒ Çʿ䰡 ¾ø´Ù´Â ÀåÁ¡ÀÌ ÀÖ´Ù. ¹Ý¸é¿¡ CORBA ORB±â´ÉÀ» ÀÚµ¿À¸·Î ´Ù¿î·ÎµåÇÒ ¼ö ¾ø±â ¶§¹®¿¡ À¥¿¡ ³»ÀåÇØ¾ß ÇÑ´Ù´Â ¹®Á¦°¡ ¹ß»ýÇÑ´Ù. ÇöÀç ³Ý½ºÄÉÀÌÇÁ¿Í Visibroker[visigenic], Orbix/Web[iona] , ¼±»çÀÇ NEO[joe][neo]µî¿¡¼­ »ç¿ëÇϰí ÀÖ´Ù.

ÀÌ ¹æ¹ý¿Ü¿¡ ½Ã½ºÅÛ º¯ÇüÀ» ÅëÇØ ¿¬µ¿ÇÏ´Â ¹æ¹ýÀº CORBA IDL(Interface Definition Language) ÄÄÆÄÀÏ·¯¸¦ È®ÀåÇÏ¿© ÇØ´ç IDL ÆÄÀÏÀ» WWW¿¡ ÀûÇÕÇÑ ÄÚµå·Î »ý¼ºÇØ ÁÖ´Â ¹æ¹ýÀÌ ÀÖ´Ù. ÀÌ ¹æ¹ýÀº CORBA IDLÀ» ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖÀ¸³ª CORBA ÀÎÅÍÆäÀ̽º¸¶´Ù °³º°ÀûÀÎ FORM ¹®À» »ý¼ºÇϱ⠶§¹®¿¡ ´ë±Ô¸ð ½Ã½ºÅÛ °³¹ß¿¡ ºÎÀûÇÕÇÏ´Ù. ÀÌ ¹æ¹ý¿Ü¿¡µµ À¥ ¼­¹ö¸¦ È®ÀåÇÏ¿© CORBA ¼­ºñ½º¸¦ È£ÃâÇÒ ¼ö ÀÖ°Ô È®ÀåÇÏ´Â ¹æ¹ý°ú ÀÚ¹Ù ¾ÖÇø´ÀÌ CORBA»ó¿¡¼­ »óÅÂÁ¤º¸¸¦ À¯ÁöÇÒ ¼ö ÀÖ°Ô CORBA ÇÁ·ÎÅäÄÝ¿¡ ½ºÆ®¸² ±â´ÉÀ» Ãß°¡Çϵµ·Ï È®ÀåÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù[resnick96].

3.2 ObjectWebÀÇ Á¤ÀÇ

ObjectWebÀ̶õ WWW¿¡¼­ CORBA¿Í ÀÚ¹Ù¿¡¼­ Á¦°øÇÏ´Â ´Ù¾çÇÑ ºÐ»ê ¼­ºñ½ºµé°ú °´Ã¼ÁöÇâ ÆÐ·¯´ÙÀÓÀ» ÀÌ¿ëÇϱâ À§ÇØ, ½Ã½ºÅÛ º¯Çü¾øÀÌ, WWW¿¡ CORBA¸¦ ÅëÇÕÇÑ È¯°æÀ» ¸»ÇÑ´Ù. ¹Ý´ë·Î CORBA¿Í ÀÚ¹Ù´Â WWW¿¡¼­ Á¦°øÇÏ´Â ¾ÈÁ¤µÈ Àü´Þ ÇÁ·ÎÅäÄÝ(HTTP)°ú À¥ºê¶ó¿ìÁ®·Î ÁöĪµÇ´Â ÅëÀÏµÈ Å¬¶óÀÌ¾ðÆ® ÀÎÅÍÆäÀ̽º¸¦ ¾òÀ» ¼ö ÀÖ´Ù. ObjectWebÀº ÇϳªÀÇ µ¶ÀÚÀûÀÎ ½Ã½ºÅÛÀÌ ¾Æ´Ï´Ù. ´ÜÁö ÇöÀç ºÐ»ê °³¹ß ȯ°æÀ» ¼±µµÇϰí ÀÖ´Â ±â¼úµéÀ» ÅëÇÕÇÏ¿© »ó½ÂÈ¿°ú¸¦ ¾ò´Â ¹æ¹ýÀÌ´Ù. [±×¸²4]´Â ObjectWebÀÇ ±¸¼ºµµÀÌ´Ù. ¸ÕÀú ObjectWebÀº WWWÀÇ HTTP¿Í CORBAÀÇ IIOP¸¦ ±âº» ÇÁ·ÎÅäÄÝ·Î »ç¿ëÇϸç CORBA IDL·Î ÀÛ¼ºµÈ ÀÎÅÍÆäÀ̽º¸¦ ÀÚ¹Ù ¾ð¾î·Î ¸ÅÇÎÇÑ´Ù. µû¶ó¼­ ObjectWebÀ» ÅëÇØ ÀÛ¼ºµÈ ÀÀ¿ë ÇÁ·Î±×·¥Àº ÀÚ¹Ù ¾ÖÇø´(¶Ç´Â Orblet) ¶Ç´Â ¼ø¼ö ÀÚ¹Ù ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ µÉ ¼ö ÀÖ´Ù. ÀÌ·¸°Ô ÀÛ¼ºµÈ ObjectWebÀÇ ÀÀ¿ë ÇÁ·Î±×·¥Àº WWWÀÇ HTTP¸¦ ÅëÇØ Àü¼ÛµÇ¸ç ÀÏ´Ü Àü¼ÛµÈ ÀÀ¿ë ÇÁ·Î±×·¥µéÀº CORBAÀÇ IIOP¸¦ ÅëÇØ ±¸µ¿µÇ¸ç ¼­ºñ½º¸¦ ÁÖ°í ¹Þ´Â´Ù.
ObjectWebÀÇ ±¸¼º
[±×¸²4] ObjectWebÀÇ ±¸¼º

4. ObjectWebÀÇ ±¸¼º¿ä¼Ò

ObjetWebÀº [±×¸²4]¿¡¼­ ó·³ ±âº»ÀûÀ¸·Î WWW¿Í CORBA , ±×¸®°í ÀÚ¹Ù·Î ÀÌ·ç¾îÁø´Ù. À̹ø Àå¿¡¼­´Â CORBA¸¦ Áß½ÉÀ¸·Î °¢ ±¸¼º¿ä¼Ò¿¡ ´ëÇØ Á¤¸®ÇØ º»´Ù.

4.1 WWW

WWW´Â ±âº»ÀûÀ¸·Î URL(Uniform Resource Locator)¶ó ºÒ¸®´Â ÁúÀÇ ±¸Á¶°ú ÀÌ¿¡ ´ëÇÑ °á°ú¸¦ HTML¶ó ºÒ¸®´Â ¸ÖƼ¹Ìµð¾î ÇÏÀÌÆÛ ¸µÅ© ¹®¼­·Î º¸³»´Â ±¸Á¶·Î ÀÌ·ç¾îÁ® ÀÖ´Ù. À̶§ Àü¼ÛÀº HTTP¶ó´Â ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇÑ´Ù. ÀÌ·¯ÇÑ ±âº» ±â´É¿Ü¿¡ CGI¶ó´Â ¿ÜºÎ ÇÁ·Î±×·¥ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ¿ÜºÎ ¼­ºñ½º¿Í ¿¬µ¿ÇÏ´Â ±¸Á¶·Î ÀÌ·ç¾îÁ® ÀÖ´Ù[±×¸²5].
WWWÀÇ ±¸¼º
[±×¸²5] WWWÀÇ ±¸¼º

4.2 ÀÚ¹Ù

ÀÚ¹Ù´Â Ãʱ⠾ÖÇø´À̶ó´Â ¸ðºô ÄÚµå °³³äÀ» À¥ ºê¶ó¿ìÁ®¿¡ ³»ÀåÇÔÀ¸·Î½á WWW¿¡ ´ëÈ­Çü ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼ºÀÇ ±æÀ» Á¦°øÇØ ÁÖ¾ú´Ù. ±×·¯³ª ÀÌ ±â´É¸¸À¸·Î´Â WWW¿¡ ¿£ÅÍÇÁ¶óÀÌÁî ±Ô¸ðÀÇ ÀÀ¿ë ½Ã½ºÅÛÀ» °³¹ßÇϱ⿡´Â ¿ªºÎÁ·ÀÌ´Ù. µû¶ó¼­ ¼± ¸¶ÀÌÅ©·Î½Ã½ºÅÛÀº ÀÚ¹Ù¸¦ ¿£ÅÍÇÁ¶óÀÌÁî ȯ°æ¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÀÚ¹Ù µ¥ÀÌŸº£À̽º ¿¬µ¿ ÆÐŰÁöÀÎ JDBC(Jaa Database connectivity) , ÀÚ¹Ù RPC(Remote Procedure Call)ÀÎ RMI(Remote Method Invocation), ±×¸®°í ÀÚ¹ÙÀÇ CORBA Áö¿ø ÅøÀÎ JAVA IDL, ÀÚ¹ÙOLEÀÎ ÀÚ¹Ù Beans, ÀÚ¹Ù Ä¿¸Ó½º ÇÁ·¹ÀÓ¿÷ÀÎ JavaWallet , º¸¾È ÇÁ·¹ÀÓ¿÷, ´Ù¾çÇÑ ¸ÖƼ¹Ìµð¾î¸¦ Áö¿øÇØÁÖ´Â ¹Ìµð¾î ÇÁ·¹ÀÓ¿÷µîÀ» °³¹ßÇϰí ÀÖ´Ù. [±×¸²6]Àº ÀÚ¹Ù¿¡¼­ Áö¿øÇÏ´Â ¼­ºñ½ºµéÀ» Á¤¸®ÇÑ °ÍÀÌ´Ù.
JavaÀÇ ¼­ºñ½ºµé
[±×¸²6] JavaÀÇ ¼­ºñ½ºµé

4.3 CORBA

1989³â 4¿ù ÇöÀç Á¸ÀçÇÏ´Â °´Ã¼ ±â¼úÀ» ¹ÙÅÁÀ¸·Î ÀÀ¿ë ÇÁ·Î±×·¥µéÀ» °áÇÕÇϱâ À§ÇÑ °´Ã¼ÁöÇâ Ç¥ÁØÀ» Á¦Á¤Çϱâ À§ÇØ OMG¶ó´Â ºñ¿µ¸® ´Üü°¡ ź»ýÇÏ¿´´Ù. ÀÌ ´Üü¿¡´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¸¦ Æ÷ÇÔÇÏ¿© 600°³ÀÇ ÄÄÇ»ÅÍ °ü·Ã ´ÜüµéÀÌ Âü°¡ÇÏ¿© °´Ã¼ÁöÇâ ±â¼úÀ» ±â¹ÝÀ¸·Î ÀÌÁ¾ÀÇ ºÐ»êµÈ ȯ°æÇÏ¿¡¼­ ÀÀ¿ë ÇÁ·Î±×·¥µéÀÌ ¼­·Î ÅëÇÕÇÒ ¼ö Àִ ǥÁرâ¼úÀ» ź»ý½ÃÄ×´Ù. ¹Ù·Î ÀÌ Ç¥ÁØÀÌ OMA(Object Management Architecture)ÀÌ´Ù. OMA´Â ÀÀ¿ë ÇÁ·Î±×·¥°£ÀÇ °áÇÕ»Ó¸¸ ¾Æ´Ï¶ó °´Ã¼ÀÇ »ý¼º , ¼Ò¸ê¿¡¼­ ºÎÅÍ ÀúÀå , Æ®·»Á§¼Ç ±â´É¿¡ À̸£±â±îÁö ºÐ»ê °´Ã¼ ȯ°æ¿¡¼­ ÇÊ¿äÇÑ ¸ðµç ¼­ºñ½º¸¦ ÃÑĪÇÏ´Â °ÍÀÌ´Ù. ÀÌµé ±â´ÉÁß CORBA´Â ÄÄÇ»ÅÍ ³»ºÎÀÇ ¹ö½ºÃ³·³ ¼­·Î ´Ù¸¥ ÇÁ·Î±×·¥µé »çÀÌÀÇ ¹ö½º ¿ªÇÒÀ» ÇÏ´Â ¸ðµâ·Î¼­ OMA ±¸Á¶¿¡¼­ °¡Àå Áß¿äÇÑ ¿ä¼Ò°¡ µÈ´Ù. ¶ÇÇÑ CORBA¿¡¼­ °¡Àå Áß¿äÇÑ ¿ä¼Ò´Â ORBÀÌ´Ù. [ ±×¸²7 ] Àº OMG ¿¡¼­ ¹ßÇ¥ÇÑ OMA ¿Í CORBA , ORB ¸¦ Æ÷ÇÔ°ü°è·Î Ç¥½ÃÇÑ °ÍÀÌ´Ù. ±×¸²¿¡¼­ ó·³ CORBA ´Â OMAÀÇ ÇÑ ºÎºÐÀ̰í ORB´Â CORBA ÀÇ Çٽɱâ¼úÀ» ¸»ÇÏ´Â °ÍÀÌ´Ù.
ÇöÀç OMG´Â 1990³â OMA¸¦ ¹ßÇ¥ÇÑ ÀÌ·¡ Áö±Ý±îÁö CORBA2.0 ½ºÆåÀ» ¹ßÇ¥ÇÏ¿´´Ù.


[±×¸²7] OMG , OMA , CORBAÀÇ °ü°è

4.3.1 OMGÀÇ OMA

OMA´Â [±×¸²8]¿¡¼­ º¸µíÀÌ ÀÌÁ¾ÀÇ ºÐ»êȯ°æ¿¡¼­ ÇÊ¿äÇÑ ¸ðµç ±â´ÉÀ» Á¤ÀÇÇϱ⠶§¹®¿¡ »ó´çÈ÷ ±¤¹üÀ§ÇÏ´Ù. ¸ÕÀú OMA¸¦ ÀÌÇØÇÏ´Â µ¥ ÀÖ¾î °¡Àå ±âÃÊ»çÇ×ÀÌ °´Ã¼ÁöÇâ °³³äÀÇ ÀÌÇØÀÌ´Ù. ¿Ö³ÄÇϸé OMA°¡ Á¦°øÇÏ´Â ¸ðµç ¼­ºñ½º´Â °´Ã¼°³³äÀ» ±â¹ÝÀ¸·Î Çϱ⠶§¹®ÀÌ´Ù. ´ÙÀ½Àº CORBA¸¦ ÀÌÇØÇÏ´Â µ¥ ÇÊ¿äÇÑ °´Ã¼ÁöÇâ °³³ä¸¸À» ¸ð¾Æ Á¤¸®ÇÑ °ÍÀÌ´Ù.


OMA´Â Å©°Ô ÀÌÁ¾ÀÇ ºÐ»ê ȯ°æ¿¡¼­ Åë½ÅÀ» ´ã´çÇÏ´Â CORBA¿Í °´Ã¼¸¦ Á¶ÀÛÇÏ´Â µ¥ ÇÊ¿äÇÑ °¢Á¾ ±âº» ±â´ÉµéÀ» Á¤ÀÇÇϰí ÀÖ´Â COSS (Common Object Service Specification) , ±×¸®°í Ãß°¡ÀûÀ¸·Î Á¦°øµÇ´Â ±â´É ¼­ºñ½º°¡ Á¸ÀçÇϰí ÀÖ´Ù. ±×¸®°í ¸¶Áö¸·À¸·Î ÀÌµé ±â´ÉµéÀ» ÀÌ¿ëÇÏ¿© »ç¿ëÀÚµéÀÌ ÀÛ¼ºÇÑ °¢Á¾ ÀÀ¿ë °´Ã¼µéÀÌ Á¸ÀçÇÑ´Ù. ¾Õ¼­µµ ¾ð±ÞÇßµíÀÌ OMA ±¸Á¶¿¡¼­ °¡Àå Áß¿äÇÑ °ÍÀÌ CORBAÀ̸ç ÇöÀç ¼ö¸¹Àº ±¸Çö Á¦Ç°ÀÌ Á¸ÀçÇϰí ÀÖ´Ù. ±×·¯³ª ½ÇÁ¦ CORBA¸¸À¸·Î´Â º¹ÀâÇÑ ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â µ¥ ÀÖ¾î ÃæºÐÇÑ ±â´ÉÀ» Á¦°øÇÏÁö´Â ¸øÇÑ´Ù. µû¶ó¼­ À̵é ÇÊ¿äÇÑ ±â´ÉÀ» ¸ð¾Æ¼­ ¸¸µç °ÍÀÌ COSSÀÌ´Ù. ÇöÀç CORBA ¸¦ ±¸ÇöÇÑ ´ëºÎºÐÀÇ Á¦Ç°Àº À̵é COSS±â´ÉÀ» Á¦°øÇϱâ À§ÇØ ¸¹Àº ÀÛ¾÷À» ¼öÇàÇϰí ÀÖ´Ù. ÀÏ´Ü CORBA°¡ Á¦°øÇÏ´Â ÀÌÁ¾ÀÇ ºÐ»ê±â´ÉÀº ´ÙÀ½ Àý¿¡¼­ »ìÆìº¸±â·Î ÇÏ°í °£·«Çϳª¸¶ COSS ¿¡¼­ Á¦°øÇÏ´Â °´Ã¼¸¦ ´Ù·ç´Â ¼­ºñ½ºµé¿¡ ´ëÇØ »ìÆìº»´Ù.

[Ç¥1] 1993³â COSS I
¼­ºñ½º ¸í ¼­ºñ½º ³»¿ë
»ý¸íÁÖ±â(LifeCycle) °´Ã¼ÀÇ »ý¼º¹× ¼Ò¸ê ±â´ÉÀ» Á¦°øÇÑ´Ù.
¸í¸í(Naming) ¿øÇÏ´Â °´Ã¼¸¦ °´Ã¼ÀÇ °íÀ¯ÇÑ ½Äº°ÀÚ°¡ ¾Æ´Ï¶ó À̸§À¸·Î ãÀ» ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
»ç°ÇÀü´Þ(Event Notification) ƯÁ¤ÇÑ ÀÛ¾÷À» ¼öÇàÇϵµ·Ï ¿øÇÏ´Â »ç°ÇÀ» µî·ÏÇϰųª »èÁ¦ÇÒ ¼ö ÀÖ´Ù.
Áö¼Ó¼º(Persistence) °´Ã¼¸¦ ÆÄÀÏÀ̳ª µ¥ÀÌŸº£À̽º¿¡ ÀúÀåÇϵµ·Ï ÇØÁØ´Ù.
[Ç¥2]1994³â COSS II
¼­ºñ½º ¸í ¼­ºñ½º ³»¿ë
°´Ã¼ °ü°è(Relationship) °¢ °´Ã¼µé»çÀÌÀÇ °ü°è¸¦ Á¤ÀÇÇϰí ÀÌ °ü°è°¡ À¯ÁöµÇµµ·Ï ÇØÁØ´Ù.
°´Ã¼ ¿ÜÇüÈ­(Externalizaction) ±âÁ¸ÀÇ °´Ã¼¸¦ Á¦°Å°¡´ÉÇÑ º¸Á¶ ±â¾ïÀåÄ¡ µî¿¡ ÀúÀåÇϵµ·Ï ÇØÁØ´Ù.
Æ®·»Á§¼Ç Æ®·»Á§¼ÇÀ» ¿ä±¸ÇÏ´Â °´Ã¼µé »çÀÌÀÇ 2´Ü°è Ä¿¹Ô( 2 Phase commit)±â´ÉÀ» Á¦°øÇÑ´Ù.
µ¿½Ã¼º Á¦¾î º¹ ¼öÀÇ ¸Þ¼Òµåµé¿¡ ÀÇÇÑ °´Ã¼Á¢±ÙÀ» º¸ÀåÇÑ´Ù
[Ç¥3]±âŸ ¼­ºñ½ºµé
¼­ºñ½º ¸í ¼­ºñ½º ³»¿ë
¶óÀ̼¾½Ì °´Ã¼ »ç¿ë¿¡ ´ëÇÑ Á¤´çÇÑ ÁöºÒÀ» À§ÇØ °´Ã¼ÀÇ »ç¿ë¿¡ ´ëÇÑ ¿¹ÃøÀ» °¡´ÉÇÏ°Ô ÇÑ´Ù.
°´Ã¼ Ư¼º(Properties) ŸÀÌÆ²À̳ª ³¯Â¥Ã³·³ °¢ °´Ã¼¿Í °ü·ÃµÈ Ư¼ºÀ» ºÎ¿©ÇÒ ¼ö ÀÖ´Ù.
ÁúÀÇ °ü°èÇü µ¥ÀÌŸº£À̽º ½Ã½ºÅÛÀÇ SQL3³ª °´Ã¼ÁöÇâ µ¥ÀÌŸº£À̽ºÀÇ OQL ÁúÀǸ¦ »óÀ§±â´ÉÀ¸·Î °´Ã¼¿¡ ´ëÇÑ ÁúÀÇ ±â´ÉÀ» Á¦°øÇÑ´Ù.
Æ®·¹À̵ù( Trading ) ºÐ»êµÈ ȯ°æ¿¡¼­ °¢°¢ÀÇ °´Ã¼°¡ Á¦°øÇÏ´Â ¼­ºñ½ºÀÇ Á¾·ù¿¡ ´ëÇÑ ¾È³»¸¦ Á¦°øÇÑ´Ù.

ÀÌµé ¼­ºñ½º¿Ü¿¡µµ °´Ã¼ÀÇ º¸¾È , ½Ã°£ , º¯È­°ü¸® , µ¥ÀÌŸ ±³È¯¿¡ °üÇÑ ¼­ºñ½º°¡ Á¤ÀǵǾî ÀÖ´Ù.




[ ±×¸²8 ] OMA(Object Managemant Architecture)

4.3.2 OMAÁß CORBA 1.2 ÀÇ ÀÌÇØ

ºÐ»ê °´Ã¼ ½Ã½ºÅÛÀ» À§ÇÑ OMA ¿¡¼­ CORBA´Â °¡Àå ÁßÃßÀûÀÎ ¿ªÇÒÀ» ÇÑ´Ù. ´Ù¸§¾Æ´Ï¶ó CORBA´Â ºÐ»ê ȯ°æ¿¡¼­ °´Ã¼°£ÀÇ Åë½ÅÀ» ´ã´çÇϱ⠶§¹®ÀÌ´Ù.

4.3.2.1 CORBA ±¸¼ºµµ

CORBA´Â [ ±×¸²9 ]¿Í °°Àº ±¸Á¶·Î ±¸¼ºµÇ¾î ÀÖ´Ù. CORBA¸¦ ÀÌÇØÇÏ´Â µ¥ ÀÖ¾î Áß¿äÇÑ Á¡Àº CORBA´Â ¼­¹ö¶ó´Â ¿ë¾î¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. ¿Ö³ÄÇϸé CORBA´Â °´Ã¼ÁöÇâ °³³äÀ» ¹ÙÅÁÀ¸·Î ÇÏ¿© ¿ø°ÝÁöÀÇ Å¬¶óÀÌ¾ðÆ®°¡ ¿ø°ÝÁö¿¡ ÀÖ´Â ¼­¹ö¸¦ È£ÃâÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó °´Ã¼ÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÔÀ¸·Î½á ¼­ºñ½º°¡ ÀÌ·ç¾îÁö±â ¶§¹®ÀÌ´Ù. µû¶ó¼­ CORBA ¿¡¼­´Â ¼­¹ö°¡ ¾Æ´Ï¶ó ±¸Çö °´Ã¼( Object Implementation )¶ó´Â ¿ë¾î¸¦ »ç¿ëÇÑ´Ù. À̶§ °í·ÁÇØ¾ß ÇÒ Á¡Àº »ç¿ëÀÚ°¡ Ŭ¶óÀÌ¾ðÆ®¿Í ±¸Çö °´Ã¼»çÀÌÀÇ Åë½ÅºÎºÐÀ» Á÷Á¢ °ü¿©ÇØ¾ß Çϴ°¡¿¡ ´ëÇÑ ¿©ºÎ¿Í ±¸Çö½Ã »ç¿ëÇÏ´Â ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡ µû¶ó °¢±â ´Ù¸£°Ô ÀÛ¼ºÇØ¾ß Çϴ°¡ ÇÏ´Â ¹®Á¦ÀÌ´Ù. ¸¸¾à ±×·¸´Ù¸é »ç¿ëÀÚ¿¡°Ô ³Ê¹« ¸¹Àº ÁüÀ» Áö¿ì´Â ¼ÀÀÌ µÈ´Ù. ÀÌ·¯ÇÑ Á¡À» ÇØ°áÇϰíÀÚ CORBA¿¡¼­´Â IDLÀ̶ó´Â Ç¥Áؾð¾î¸¦ Á¦°øÇÑ´Ù. µÚ¿¡ ÀÚ¼¼È÷ ´Ù·ç°ÚÁö¸¸ »ç¿ëÀÚ´Â IDLÀ» »ç¿ëÇÏ¿© ¿øÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ÀÏ´Ü ÀÛ¼ºµÈ IDLÀº CORBA ¿¡¼­ Á¦°øÇÏ´Â IDL ÄÄÆÄÀÏ·¯¸¦ ÅëÇØ ÄÄÆÄÀϵȴÙ. ÀÌ °á°ú ¿øÇÏ´Â ÇÁ·Î±×·¥ ¾ð¾î·Î ÀÛ¼ºµÈ Ŭ¶óÀÌ¾ðÆ® ÄÚµå¿Í ±¸Çö °´Ã¼ Äڵ带 ¾òÀ» ¼ö ÀÖ´Ù.( ÀÌ ÄÚµå´Â C³ª C++ ¶Ç´Â ½º¸ôÅäũó·³ »ç¿ëÀÚ°¡ ¿øÇÏ´Â ÇüÅ·ΠÁ¦°øµÈ´Ù.) ÀÌ ÄÚµåµé¿¡´Â Åë½ÅÀ» À§ÇØ ÇÊ¿äÇÑ ¸ðµç ±â´ÉÀÌ ÀÚµ¿ÀûÀ¸·Î Æ÷ÇԵȴÙ. µû¶ó¼­ »ç¿ëÀÚ´Â ³×Æ®¿÷°ú ±¸Çö¾ð¾î¿¡ ´ëÇÑ °ÆÁ¤À» ÇÒ Çʿ䰡 ¾ø´Ù.

ÀÏ´Ü CORBAÀÇ Å¬¶óÀÌ¾ðÆ®¿¡´Â Ŭ¶óÀÌ¾ðÆ® ½ºÅͺê¿Í ÇÁ·Î±×·¥ ¼öÇà½Ã ¿øÇÏ´Â ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â µ¿Àû È£Ãâ(Dynamic Invocation) ±â´ÉÀ» ÅëÇØ ±¸Çö°´Ã¼¸¦ È£ÃâÇÒ ¼ö ÀÖ´Ù. ÀÏ´Ü Å¬¶óÀ̾ðÆ®ÀÇ È£ÃâÀÌ ¹ß»ýÇϸé Åë½ÅÀ» ´ã´çÇÏ´Â ORB ±â´ÉÀ» ÅëÇØ ±¸Çö°´Ã¼¿¡°Ô Àü´ÞµÈ´Ù. À̶§ ±¸Çö°´Ã¼ÂÊÀÇ °´Ã¼ ¾Æ´äÅÍ(Object Adaptor)´Â ±âº»ÀûÀ¸·Î ÇØ´ç °´Ã¼¸¦ È£Ãâ°¡´ÉÇÏ°Ô »ý¼ºÇÏ°í ¿øÇϴ ȣÃâ¿¡ ÇØ´çÇÏ´Â ¸Þ¼Òµå¸¦ ½ÇÇà½ÃŲ´Ù. ÀÏ´Ü ½ÇÇàµÈ ¸Þ¼Òµå¿¡ ÀÇÇØ¼­ ó¸®µÈ °á°ú´Â ´Ù½Ã Ŭ¶óÀÌ¾ðÆ®¿¡°Ô Àü´ÞµÈ´Ù. ÀÌ °úÁ¤À» ¿ä¾àÇØ¼­ º¸¸é [ ±×¸²10 ]°ú °°´Ù. Ŭ¶óÀÌ¾ðÆ®¿¡ ÀÇÇØ¼­ ¿äûµÈ ¼­ºñ½º´Â CORBA¸¦ ÅëÇØ ¿ø°ÝÁöÀÇ ±¸Çö°´Ã¼¿¡°Ô Àü´ÞµÇ°í ±¸Çö°´Ã¼¿¡ ÀÇÇØ¼­ ó¸®µÈ °á°ú´Â ´Ù½Ã Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ¹ÝȯµÈ´Ù. À̶§ È£Ãâ½Ã Àü´ÞµÇ´Â Á¤º¸·Î´Â È£Ãâ½Ã ´ë»óÀÌ µÇ´Â °´Ã¼¿Í ¸Þ¼Òµå , ÆÄ¶ó¸ÞÅ͵îÀÌ ÀÖ´Ù.





[ ±×¸²9 ] CORBA ±¸¼ºµµ



[ ±×¸²10 ] CORBA Ŭ¶óÀÌ¾ðÆ®¿Í °´Ã¼ ±¸Çö»çÀÌÀÇ Åë½Å

4.3.2.2 CORBA È£Ãâ ¿ø¸® ÀÌÇØ

CORBA¸¦ ÀÌÇØÇÏ´Â µ¥ ÀÖ¾î °´Ã¼ÁöÇâ °³³äÀÌ °¡Àå ±âº»ÀÌ µÊÀ» °­Á¶ÇÑ ¹Ù ÀÖ´Ù. ¶ÇÇϳª Á¤È®È÷ ÀÌÇØÇØ¾ß ÇÒ °ÍÀÌ CORBAÀÇ È£Ãâ ¿ø¸®¸¦ ÀÌÇØÇÏ´Â °ÍÀÌ´Ù. ¸ÕÀú CORBA ¿¡¼­ ¼­ºñ½º°¡ È£ÃâµÇ´Â ¿ø¸®´Â [ ±×¸²11 ]°ú °°´Ù. ±âÁ¸ÀÇ °´Ã¼ÁöÇâ Äڵ忡¼­´Â ¸Þ¼ÒµåÀÇ È£Ãâ(Caller)°¡ ÀÌ¿¡ ´ëÇÑ È£Ãâ ó¸®ÀÚ(Callee)´Â ÇϳªÀÇ ÇÁ·Î¼¼½º·Î Á¸ÀçÇÑ´Ù. ±×·¯³ª ¸¸¾à ¸Þ¼ÒµåÀÇ È£Ãâ°ú ÀÌ¿¡ ´ëÇÑ Ã³¸®°¡ ³×Æ®¿÷À» ±âÁØÀ¸·Î ¾çºÐµÈ´Ù¸é ¾î¶»°Ô µÉ±î? ½ÇÁ¦ ÀÌ¿¡ ´ëÇÑ ´ë´äÀº °£´ÜÇÏ´Ù. ¸ÕÀú È£ÃâÇÏ´Â ÂÊ , Ŭ¶óÀÌ¾ðÆ®¿¡´Â ³×Æ®¿÷À» ÅëÇØ ¼­ºñ½º¸¦ È£ÃâÇϰí ÀÌ¿¡ ´ëÇÑ °á°ú¸¦ Àü´Þ¹Þ´Â Äڵ带 ÀÛ¼ºÇØ ÁÖ°í È£Ãâ ó¸®ÀÚÃø , ±¸Çö °´Ã¼ÂÊ¿¡¼­´Â ³×Æ®¿÷»óÀ¸·Î Àü´ÞµÇ´Â ¼­ºñ½º È£ÃâÀ» ¹Þ°í À̸¦ ó¸®ÇÑ ÈÄ ´Ù½Ã Ŭ¶óÀÌ¾ðÆ®¿¡°Ô Àü´ÞÇØÁÖ´Â Äڵ带 ÀÛ¼ºÇØ ÁÖ¸é µÈ´Ù. ÀÌ·¯ÇÑ ±â´ÉÀ» ¼öÇàÇÏ´Â Äڵ带 ÀüÀÚ´Â ½ºÅͺê(Stub) , ÈÄÀÚ´Â ½ºÄ̸®ÅÏ(Skeleton)À̶ó ÇÑ´Ù.

½ÇÁ¦ ¿¹·Î, ¸¸¾à ±¸Çö °´Ã¼·Î¼­ PersonÀ̶ó´Â C++ Ŭ·¡½º¸¦ ÀÛ¼ºÇß´Ù°í °¡Á¤ÇÏÀÚ. ¸¸¾à Ŭ¶óÀÌ¾ðÆ®°¡ PersonŬ·¡½ºÀÇ getAge()¶ó´Â ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¶§ ÀÌ È£ÃâÀº Ŭ¶óÀ̾ðÆ®Ãø getAge()½ºÅͺ긦 ÅëÇØ ¿ø°ÝÁöÀÇ ½ºÄ̸®ÅÏÀ¸·Î Àü´ÞµÈ´Ù. ÀÌ °úÁ¤¿¡¼­ ½ºÅͺê´Â ÇØ´ç ¸Þ¼ÒµåÀÇ È£Ãâ¿¡ ÇÊ¿äÇÑ °¢Á¾ Á¤º¸¸¦ ³×Æ®¿÷À¸·Î Àü´ÞÇϱâ À§ÇØ Æ÷ÀåÀ» ÇØ¾ß ÇÑ´Ù. ÀÌ Æ÷ÀåµÈ ¸Þ¼Òµå´Â getAge()ÀÇ ½ºÄÌ·ÎÅÏ¿¡ ÀÇÇØ¼­ Æ÷ÀåÀÌ Ç®·ÁÁö°í È£ÃâµÈ´Ù. ó¸®µÈ getAge()´Â ´Ù½Ã ³×Æ®¿÷À» ÅëÇØ Ŭ¶óÀÌ¾ðÆ® ½ºÅͺ꿡°Ô Àü´ÞµÇ±â À§ÇØ Æ÷ÀåµÇ°í Àü´ÞµÈ´Ù. Ŭ¶óÀ̾ðÆ®ÂÊÀÇ getAge()½ºÅͺê´Â ½ºÄ̸®ÅÏÀ» ÅëÇØ ³Ñ°Ü¹ÞÀº °á°úÀÇ Æ÷ÀåÀ» Ç®°í ÇØ´ç °á°ú°ªÀ» ó¸®ÇÑ´Ù.
½ÇÁ¦ ÀÌ·¯ÇÑ °úÁ¤À» ÅëÇØ CORBA°´Ã¼ÀÇ È£ÃâÀÌ ÀÌ·ç¾îÁø´Ù. À̶§ ½ºÅͺê¿Í ½ºÄ̸®ÅÏÀ» À§ÇØ ÇÊ¿äÇÑ ¸ðµç ±â´ÉÀÇ ÄÚµå´Â CORBA¿¡ ÀÇÇØ¼­ ÀÚµ¿ÀûÀ¸·Î Á¦°øµÈ´Ù.



[ ±×¸²11 ] CORBA È£Ãâ ¿ø¸®

4.3.2.3 CORBA ±¸¼º ¿ä¼Ò ÀÌÇØ

´ÙÀ½Àº CORBAÀÇ °¢ ±¸¼º¿ä¼Òµé¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù.

4. CORBA 2.0ÀÇ Ãß°¡ ±â´É
CORBA 1.0 Ç¥ÁؾÈÀÇ °¡Àå Å« ´ÜÁ¡Àº ´Ù¸¥ CORBA Á¦Ç°°ú ȣȯÀÌ µÇÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. °¡·É, A»ç¿¡¼­ °ø±ÞÇÏ´Â CORBA Á¦Ç°°ú B»çÀÇ Á¦Ç°Àº ȣȯÀÌ µÇÁö ¾Ê´Â´Ù. ¿Ö³ÄÇÏ¸é °¢±â °´Ã¼¸¦ ÀνÄÇÏ´Â ¹æ¹ýÀÌ Æ²¸®±â ¶§¹®ÀÌ´Ù. ÀÌ·¯ÇÑ ¹®Á¦Á¡¸¦ ÇØ°áÇÏ´Â µ¥ ÁßÁ¡À» µÐ °ÍÀÌ CORBA 2.0 Ç¥ÁؾÈÀÌ´Ù. µû¶ó¼­ CORBA 2.0Àº ±âÁ¸ÀÇ CORBA 1.2ÀÇ ±â´É¿¡ ´ÙÀ½ÀÇ ±â´ÉµéÀ» Ãß°¡ÇÏ¿´´Ù.

- µ¿Àû ½ºÄ̸®ÅÏ ÀÎÅÍÆäÀ̽º(Dynamic Skeleton Interface)
CORBA 1.2¿¡¼­´Â Ŭ¶óÀ̾ðÆ®ÀÇ ½ºÅͺ꿡 µû¶ó ±¸Çö °´Ã¼»óÀÇ ½ºÄ̸®ÅÏÀÌ ÄÄÆÄÀϽà °áÁ¤µÇ¾ú´Ù. ±×·¯³ª 2.0¿¡¼­´Â ÀÌ·¯ÇÑ ¹æ½ÄÀ̿ܿ¡ ½ÇÇà½Ã°£¿¡ ¿äûµÈ ¼­ºñ½ºÀÇ ÆÄ¶ó¸ÞÅ͸¦ ÇØ¼®ÇÏ¿© ÇØ´ç ±¸Çö °´Ã¼ÀÇ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â µ¿Àû ½ºÄ̸®ÅÏ ÀÎÅÍÆäÀ̽º ¹æ½ÄÀ» Ãß°¡ÇÏ¿´´Ù. ƯÈ÷ ÀÌ ±â´ÉÀº ´Ù¸¥ ORBµé »çÀÌÀÇ ¼­ºñ½º ±³È¯½Ã À¯¿ëÇÑ ±â´ÉÀÌ´Ù.

- CORBA2.0ÀÇ ORB°£ ȣȯ ±¸Á¶
CORBA2.0¿¡¼­´Â ORB»çÀÌÀÇ È£È¯À» À§ÇØ [±×¸²17]°ú °°Àº ±¸Á¶¸¦ Á¦¾ÈÇÏ¿´´Ù. ÀÌ ±¸Á¶¿¡¼­ º¸¸é Å©°Ô ÇʼöÀûÀÎ ¿ä±¸»çÇ×À¸·Î GIOP(General Inter-ORB Protocol)°ú TCP/IP °¡ , ¿É¼Ç»çÇ×À¸·Î ESIOP(Environment-Specific Inter-ORB Protocol)ÀÌ ¼Ò°³µÇ¾ú´Ù.
¸ÕÀú GIOP´Â ORBµé »çÀÌÀÇ Åë½ÅÀ» À§ÇÑ ÀÏ·ÃÀÇ ¸Þ½ÃÁö ÇüÅÂ¿Í °øÅëÀÇ µ¥ÀÌŸ Ç¥ÇöÀ» ¸í½ÃÇÑ´Ù. GIOP·Î ¸í½ÃµÈ Ŭ¶óÀ̾ðÆ®ÀÇ ¿ä±¸»çÇ×Àº TCP/IP¸¦ ºñ·ÔÇÏ¿© ³×Æ®¿ö¾îµî ÀÏ·ÃÀÇ ³×Æ®¿÷À» °øÀ¯ÇÏ¿© ´Ù¸¥ ORB¿¡°Ô ¹Ù·Î Àü´ÞµÈ´Ù. À̶§ IDL·Î Á¤ÀÇµÈ µ¥ÀÌŸ ŸÀÔÀ» ³×Æ®¿÷ ¸Þ½ÃÁö ÇüÅ·Πº¯È¯Çϱâ À§ÇØ CDR(Common Data Format)À̶ó´Â ¹æ¹ýÀÌ »ç¿ëµÈ´Ù.
CORBA 2.0¿¡¼­ Á¤ÀÇÇÑ TCP/IP¸¦ IIOP(Internet Inter-ORB Protocol)À̶ó°íµµ Çϴµ¥ ¿©±â¼­´Â GIOP·Î Á¤ÀÇµÈ ¸Þ¼¼Áö°¡ TCP/IP»ó¿¡¼­ ¾î¶»°Ô Àü´ÞµÇ´ÂÁö¸¦ Á¤ÀÇÇϰí ÀÖ´Ù. ÀÌ IIOP´Â ÀÎÅͳÝÀ» ORB ÀÇ ±âº» ³×Æ®¿÷À¸·Î »ç¿ë°¡´ÉÇÏ°Ô ÇÑ´Ù. °á±¹ CORBA 2.0 À» Áö¿øÇÏ´Â ¸»Àº TCP/IP »ó¿¡¼­ GIOP¸¦ »ç¿ëÇÏ¿© ¼­·Î ´Ù¸¥ ORBµé »çÀÌÀÇ ¸Þ¼Òµå È£ÃâÀ» Áö¿øÇÑ´Ù´Â ¸»ÀÌ´Ù.

GIOP¿Í IIOP°¡ ÇʼöÀûÀÎ ¿ä±¸»çÇ×Àε¥ ¹ÝÇØ ESIOP´Â ¿É¼Ç»çÇ×À¸·Î¼­ ´Ù¸¥ ºÐ»ê ¼­ºñ½º ½Ã½ºÅÛµé°úÀÇ È£È¯À» À§ÇØ ¼³Á¤µÈ´Ù. ÇöÀç DCE(Distributed Computing Environment)°¡ ±× ù ¹øÂ° ȣȯ´ë»óÀ¸·Î¼­ Á¤ÀǵǾî ÀÖ´Ù. DCE/ESIOP ¿¡ µû¸£¸é GIOPÀÇ CDR·Î Ç¥ÇöµÈ ¸Þ½ÃÁö´Â DCE ¿¡¼­ ÇØ¼®ÀÌ °¡´ÉÇϵµ·Ï º¯È¯µÇ¾î Áø´Ù. µû¶ó¼­ ESIOP¸¦ »ç¿ëÇÏ¸é º¸¾È±â´ÉÀ̳ª µð·ºÅ丮 ¼­ºñ½ºµî DCE¿¡¼­ Á¦°øÇÏ´Â Ãß°¡ÀûÀÎ ±â´ÉÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.






[ ±×¸²17 ] ORB°£ ȣȯÀ» À§ÇÑ ±¸Á¶

- ORB°£ ºê¸®Áö Á¦°ø
CORBA2.0 ¿¡¼­ Á¤ÀÇÇÑ µ¿Àû ½ºÄ̸®ÅÏ ÀÎÅÍÆäÀ̽º¸¦ ÀÌ¿ëÇÏ¸é ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ COM/OLE¿Í °°Àº ´Ù¸¥ °´Ã¼¿¡ ´ëÇÑ °ÔÀÌÆ®¿þÀ̸¦ »ý¼ºÇÒ ¼ö ÀÖÀ» »Ó¸¸ ¾Æ´Ï¶ó ´Ù¸¥ ORB»çÀÌ¿¡¼­µµ Ưº°ÇÑ ±â´ÉÀÇ °ÔÀÌÆ®¿þÀ̸¦ ¸¸µé ¼ö ÀÖ´Ù.

5. ºÐ»ê °´Ã¼ ½Ã½ºÅÛÀÇ ¿©·¯ °¡Áö ±¸¼º¹æ¹ý
½ÇÁ¦ ÀÌ·¯ÇÑ ºÐ»ê °´Ã¼ ½Ã½ºÅÛÀ» ±¸¼ºÇÏ´Â µ¥¿¡´Â [±×¸²18]¿¡¼­ ó·³ Å©°Ô 3°¡Áö ¹æ¹ýÀÌ Á¸ÀçÇÑ´Ù.
Çϳª´Â ´ÜÀÏ ÇÁ·Î¼¼½º ³»ºÎ¿¡¼­ ¶óÀ̺귯¸®¸¦ ÅëÇØ Ŭ¶óÀÌ¾ðÆ®¿Í ±¸Çö °´Ã¼»çÀÌÀÇ ¼­ºñ½º°¡ ÁøÇàµÇ´Â ¹æ¹ýÀÌ´Ù. ÀÌ ¹æ¹ýÀº ºÐ»êµÈ ȯ°æ¿¡ ÀûÇÕÇÏÁö ¾Ê´Ù.
¶Ç ÇϳªÀÇ ¹æ¹ýÀº ºÐ»ê °´Ã¼ ½Ã½ºÅÛ¿¡¼­ Á¦°øÇÏ´Â ±â´ÉÀÌ Å¬¶óÀÌ¾ðÆ®¿ë ¶óÀ̺귯¸®¿Í ±¸Çö °´Ã¼¿ë ¶óÀ̺귯¸® ÇüÅ·ΠÁ¸ÀçÇϰí À̸¦ ÀÌ¿ëÇÏ¿© ºÐ»êµÈ ȯ°æ¿¡¼­ ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù. ÀÛ¼ºµÈ ÇÁ·Î±×·¥Àº º°µµÀÇ ÇÁ·Î¼¼½º·Î Á¸ÀçÇÑ´Ù.
¸¶Áö¸·À¸·Î ±âÁ¸ÀÇ ¿î¿µÃ¼Á¦¿¡ ºÐ»ê °´Ã¼ ±â´ÉÀ» Ãß°¡Çϰųª º°µµÀÇ ºÐ»ê °´Ã¼ µ¥¸ó ÇÁ·Î±×·¥ÀÌ Á¸ÀçÇÏ¿© Ŭ¶óÀÌ¾ðÆ®¿Í ºÐ»ê °´Ã¼»çÀÌÀÇ ¼­ºñ½º¸¦ ÁÖ°üÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù.
ÇöÀç ´ë´Ù¼öÀÇ ±¸ÇöÁ¦Ç°Àº µÎ ¹øÂ°¿Í ¼¼ ¹øÂ° ¹æ¹ýÀ» »ç¿ëÇÏ¿© ºÐ»ê °´Ã¼ ½Ã½ºÅÛÀ» °³¹ßÇϰí ÀÖ´Ù.




[ ±×¸²18 ] ºÐ»ê °´Ã¼ ½Ã½ºÅÛÀÇ ¿©·¯ °¡Áö ±¸Á¶

5. ObjectWeb ±¸Ãà ȯ°æ

ObjectWebÀÇ ±¸Ãà ȯ°æÀº ±âÁ¸ÀÇ WWWȯ°æ°ú µ¿ÀÏÇÏ´Ù. ´ÜÁö ´Ù¸¥ Á¡Àº CORBA IIOP¸¦ Áö¿øÇÏ´Â À¥ ºê¶ó¿ìÁ®¿Í CORBA¿Í ¿¬µ¿°¡´ÉÇÑ À¥¼­¹ö¿¡ ÀÖ´Ù. ÀÏ´Ü ObjectWebÀ» ÅëÇØ °³¹ßµÈ Ŭ¶óÀÌ¾ðÆ® OrbletÀº CORBA IIOP¸¦ Áö¿øÇÏ´Â À¥ ºê¶ó¿ìÁ®¿¡ HTTP¸¦ ÅëÇØ ´Ù¿î·ÎµåµÈ´Ù. ´Ù¿î·ÎµåµÈ OrbletÀº IIOP¸¦ ÅëÇØ CORBA¿ÍÀÇ ¼­ºñ½º¸¦ °³½ÃÇÏ°Ô µÈ´Ù. ÀÌ ¶§ À¯ÀÇÇÒ Á¡Àº Orblet ¿ª½Ã ÀÚ¹Ù ¾ÖÇø´À̱⠶§¹®¿¡ ÀÚ¹Ù ¾ÖÇø´ÀÌ °®°í ÀÖ´Â º¸¾È»óÀÇ Á¦¾à, ƯÈ÷ ´Ù¿î·Îµå ¹ÞÀº È£½ºÆ®¿¡¸¸ ¿¬°áÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Â Á¦¾à¿¡ Áö¹èµÈ´Ù. µû¶ó¼­ ±âº»ÀûÀ¸·Î ´Ù¿î·ÎµåµÈ WWW¼­¹ö¸¦ ÅëÇØ ¼­ºñ½º ¿¬°áÀ» ½ÃµµÇÑ´Ù. °á±¹ WWW¼­¹ö´Â Orblet ÀÌ ¿äûÇÑ ¼­ºñ½º¸¦ ³×Æ®¿÷»óÀÇ ´Ù¸¥ °÷¿¡ À§Ä¡ÇÑ CORBA¿¡°Ô Àü´ÞÇϱâ À§ÇÑ ¹æ¹ýÀ» °®°í ÀÖ¾î¾ß ÇÑ´Ù. ÀÌ ¶§ »ç¿ëµÇ´Â ¿¬µ¿¹æ¹ýÀº 3.1¿¡¼­ ¼³¸íÇÑ ¹Ù¿Í °°´Ù. ObjectWeb ȯ°æÀº À§¿Í °°Àº CORBA ¼­ºñ½º¿Ü¿¡µµ ±âÁ¸ÀÇ CGI ÀÎÅÍÆäÀ̽º¿Í HTML ¹®¼­ ¼­ºñ½º¸¦ ¿©ÀüÈ÷ Á¦°øÇÑ´Ù. ÇöÀç ³Ý½ºÄÉÀÌÇÁ4.0¿¡ ³»ÀåµÈ CORBA IIOP ±â´ÉÀ» ÅëÇØ ObjectWeb ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.




[ ±×¸²19 ] ObjectWeb ±¸Ãà ȯ°æ

6. ObjectWeb Á¦Ç°µé

ÇöÀç ObjectWeb ȯ°æÀ» Áö¿øÇÏ´Â ¸¹Àº CORBA Á¦Ç°µéÀÌ ¼Ò°³µÇ°í ÀÖ´Ù. ´ÙÀ½Àº ÇØ´ç Á¦Ç°µé¿¡ ´ëÇÑ ¸ñ·ÏÀÌ´Ù. ¸ÕÀú ÁÖ¸ñÇÒ ¸¸ÇÑ Á¦Ç°À¸·Î´Â ³Ý½ºÄÉÀÌÇÁ»ç¿Í º¼·£µåµî¿¡¼­ CORBA IIOP ±â´ÉÀ» Áö¿øÇϱâ À§ÇØ ¶óÀ̼¾½ºÇÑ Á¦Ç°À¸·Î ºñÁöºê·ÎÄ¿»çÀÇ ºñÁöºê·ÎÄ¿[visigenic]¿Í °¡Àå ¸¹Àº Ç÷¡Æû°ú ´Ù¾çÇÑ CORBA ¼­ºñ½º¸¦ Á¦°øÇÏ´Â Orbix[iona]°¡ ÀÖ´Ù.

[Ç¥5] ObjectWeb »ó¿ëÁ¦Ç°
Á¦Ç°¸í ȸ»ç URL
OrbixWeb IONA http://www.iona.com
Visibroker for Java Visigenic http://www.visigenic.com
JOE Sun http://www.sunsoft.com
CHORUS/COOL CHORUS Systems http://www.chorus.com/Products/Cool/index.html
[Ç¥6] ObjectWeb °ø°³ Á¦Ç°µé
Á¦Ç°¸í URL
JacORB http://www.inf.fu-berlin.de/~brose/jacorb
Julu http://Coho.stanford.EDU/~hassan/Jylu
ELECTRA http://www.olsen.ch/~maffeis/electra.html
Omnibroker http://www.ooc.com/ob.html
Jade http://pariah.ansa.co.uk:8080/~jade/
DOME http://www.realobj.demon.co.kuk/
JORBA http://www.progsoc.uts.edu.au/~raz/jorba/
Java ID http://splash.javasoft.com/JavaIDL/pages/index.html

´ÙÀ½Àº »ó¿ë Á¦Ç°µéÀÇ ±â´ÉÀ» ºñ±³ÇÑ Ç¥ÀÌ´Ù[Orfali97].

[ Ç¥7 ] »ó¿ë ObjecdtWeb ±â´É ºñ±³Ç¥
CORBA ±â´É OrbixWeb Joe Visibroker for Java
Ŭ¶óÀ̾ðÆ®Ãø ÀÚ¹Ù 0 0 0
¼­¹öÃø ÀÚ¹Ù 0 X 0
Á¤Àû ¸Þ¼Òµå È£Ãâ 0 0 0
µ¿Àû ¸Þ¼Òµå È£Ãâ 0 X 0
ÀÎÅÍÆäÀ̽º ÀúÀå¼Ò 0 X 0
¼­¹ö Äݹé 0 0 0
IIOP¸¦ ÅëÇÑ ³×ÀÌÆ¼ºê ÀÚ¹Ù X X 0 (Caffeine)

7. ObjectWeb ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ß

5Àå°ú 6Àå¿¡¼­ »ìÆìº» °Íó·³ ÇöÀç ¸¹Àº Á¦Ç°µéÀÌ ObjectWeb ȯ°æÀ» Á¦°øÇÑ´Ù. ±×·¯³ª ´ÙÇེ·¯¿î °ÍÀº ÀÌ Á¦Ç°µé ¸ðµÎ CORBA Ç¥ÁØÀ» ÁؼöÇϱ⠶§¹®¿¡ ±× °³¹ß ¹æ¹ý°ú ÀýÂ÷´Â µ¿ÀÏÇÏ´Ù´Â °ÍÀÌ´Ù. ¹°·Ð Ç¥ÁØ¿¡ ÁؼöÇÏ´Â ±Ô¾à¿Ü¿¡ °¢ Á¦Ç°µéÀÌ ³ª¸§´ë·Î Á¦°øÇÏ´Â ±â´Éµéµµ ´Ù¼ö Á¸ÀçÇÑ´Ù. µû¶ó¼­ º» Àý¿¡¼­´Â ¿©·¯ Á¦Ç°µéÁß ºñÁöºê·ÎÄ¿¸¦ »ç¿ëÇÏ¿© ObjectWeb¿¡¼­ÀÇ ÀϹÝÀûÀÎ °³¹ß°úÁ¤À» »ìÆìº¸µµ·Ï ÇÑ´Ù.

7.1 ObjectWebÀÇ ÀϹÝÀûÀÎ °³¹ß °úÁ¤

ObjectWeb¿¡¼­ÀÇ °³¹ß °úÁ¤Àº ±âÁ¸ÀÇ CORBA °³¹ß ¹æ¹ý°ú µ¿ÀÏÇÏ´Ù. ´ÙÀ½Àº ±× °³¹ß°úÁ¤À» Á¤¸®ÇÑ °ÍÀÌ´Ù.

Âü°í·Î ³Ý½ºÄÉÀÌÇÁ¿Í ºñÁöºê·ÎÄ¿¿¡¼­ ¹ßÇ¥ÇÑ Ä«ÆäÀÎ(caffeine)ÀÇ °æ¿ì IDL¾øÀÌ ÀÛ¼ºµÈ ÀÚ¹Ù ÀÎÅÍÆäÀ̽º ÄÚµå(.class)·Î ºÎÅÍ ½ºÅͺê¿Í ½ºÄ̸®ÅÏ Äڵ带 »ý¼ºÇØ ³½´Ù. ÇѸ¶µð·Î Ä«ÆäÀÎÀº CORBA IIOPÀ§¿¡ ÀÚ¹Ù RMI¸¦ ±¸ÇöÇÑ °ÍÀ̶ó ÇÒ ¼ö ÀÖ´Ù. [±×¸²20]´Â ¾Õ¼­ ¼³¸íÇÑ °úÁ¤À» ³ªÅ¸³½ ±×¸²ÀÌ´Ù.

ObjectWeb °³¹ß ÀýÂ÷

[ ±×¸²20 ] ObjectWeb ÇÁ·Î±×·¡¹Ö ÀýÂ÷

7.2 ÇÁ·Î±×·¥ °³¹ß °úÁ¤

ObjectWebÀÇ °³¹ß °úÁ¤Àº Ãʺ¸ÀÚÀÇ °æ¿ì »ó´çÈ÷ º¹ÀâÇÏ°Ô ´À²¸Áø´Ù. ±×·¯³ª Ç×»ó ÀÏ·ÃÀÇ °úÁ¤À» ÅëÇØ ÁøÇàµÇ±â ¶§¹®¿¡ ±× ÁøÇà ÀýÂ÷¸¦ ¼÷ÁöÇÏ¸é ¼Õ½±°Ô ¿øÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº ObjectWeb Á¦Ç°Áß ºñÁöºê·ÎÄ¿¸¦ ÅëÇØ ÀÌ °úÁ¤À» ÀÍÇôº¸µµ·Ï ÇÑ´Ù.

7.2.1 ObjectWeb ȯ°æ ±¸Ãà

´ÙÀ½Àº ºñÁöºê·ÎÄ¿ Á¦Ç°ÀÇ È¯°æ ±¸Ãà °úÁ¤ÀÌ´Ù. ¼³Ä¡È¯°æÀº À©µµ¿ìÁî¶ó°í °¡Á¤ÇÑ´Ù.

¸¸¾à, Ŭ¶óÀÌ¾ðÆ®°¡ ÀÚ¹Ù ¾ÖÇø´À̶ó¸é ¼öÇàÇϱâ Àü¿¡ gatekeeper ¶ó´Â ÇÁ·Î±×·¥À» ¼öÇàÇØ¾ß ÇÑ´Ù. getekeeper´Â HTTP¸¦ ÅëÇØ ºñÁöºê·ÎÄ¿ ¼­¹ö¸¦ È£ÃâÇÏ°Ô ÇØÁÖ´Â HTTP-to-IIOP °ÔÀÌÆ®¿þÀÌÀÌ´Ù. gatekpeer°¡ Á¦´ë·Î ¼öÇàµÇÁö ¾ÊÀ¸¸é ¾ÖÇø´ ÇüÅÂÀÇ Å¬¶óÀÌ¾ðÆ®´Â ¼öÇàµðÁö ¾Ê´Â´Ù. gatekeeper ¼öÇà½Ã °¡Àå ºó¹øÈ÷ ¹ß»ýÇÏ´Â °ÍÀº UnknownHost ExceprionÀÌ´Ù. ÀÌ °æ¿ì, ½ÇÁ¦ ÀÚ¹ÙÀÇ ¶óÀ̺귯¸®(getHostByName)ÀÇ ¿À·ùÀε¥ ·ÎÄà ȣ½ºÆ®ÀÇ µµ¸ÞÀÎ À̸§°ú DNS ¼­¹ö»óÀÇ µµ¸ÞÀÎÀ̸§ÀÇ Æ²¸° °æ¿ìÀÌ´Ù. µû¶ó¼­ DNS ¼­¹ö¿¡¼­ Á¦°øÇÏ´Â µµ¸ÞÀÎ À̸§À¸·Î ¼³Á¤À» ¹Ù²Ù¸é Á¦´ë·Î ¼öÇàÇÒ ¼ö ÀÖ´Ù.

7.2.2 ObjectWeb °³¹ß °úÁ¤ ÀÌÇØ

¾Õ¼­ ¹«»çÈ÷ ¼³Ä¡¸¦ Çß´Ù¸é ´ÙÀ½ÀÇ °úÁ¤¿¡ µû¶ó ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù. ÆíÀÇ»ó ¿¹Á¦·Î¼­ ¼³Ä¡ ÈÄ ¿¹Á¦ µð·ºÅ丮¿¡ º¹»çµÇ´Â bank ¿¹Á¦¸¦ »ç¿ëÇϱâ·Î ÇÑ´Ù. ¸¶Áö¸·À¸·Î ÁÖÀÇ ÇÒ Á¡Àº ¾Õ¼­ ¼³¸íÇÑ °Íó·³ Ŭ¶óÀÌ¾ðÆ®°¡ ÀÚ¹Ù ¾ÖÇø´ÀÎ °æ¿ì ¹Ýµå½Ã ½ÇÇàÇϱâ Àü¿¡ osagent¿Í gatetkeeper(IIOP GeteKeeper)¶ó´Â ÇÁ·Î±×·¥À» ¼öÇàÇØ¾ß ÇÑ´Ù. gatekeeper´Â HTTP ÅͳθµÀ» ÅëÇØ ¹æÈ­º®³»¿¡ °´Ã¼ ¼­¹öµé°ú Åë½ÅÇÏ°Ô ÇØÁØ´Ù. ´Ù½Ã¸»Çϸé getekeeper´Â ObjectWeb Ŭ¶óÀÌ¾ðÆ® ¾ÖÇø´ÀÌ ´Ù¿î·ÎµåµÈ È£½ºÆ®¿Ü¿¡ ´Ù¸¥ °÷¿¡ À§Ä¡ÇÑ °´Ã¼µé°ú Åë½ÅÇÏ°Ô ÇØÁØ´Ù.

8. °á·Ð

Áö±Ý±îÁö WWW¿Í CORBA, JavaÀÇ ¿¬µ¿ ±â¼úÀ» ÁöĪÇÏ´Â ObejctWeb¿¡ ´ëÇØ »ìÆìº¸¾Ò´Ù. Á¤¸®Çϸé ObjectWebÀº ÇöÀç ÀÎÅͳÝÀ» Áß½ÉÀ¸·Î ÇÑ ±â¼úÁß °¡Àå Áß¿äÇÑ ÇÙ½É ±â¼úÀÎ WWW¿Í CORBA, JavaÀÇ ÀåÁ¡µéÀ» ¿¬µ¿ÇÏ¿© º¸´Ù À¯¿¬ÇÑ ½Ã½ºÅÛÀ» °³¹ßÇÏ°Ô ÇØÁØ´Ù. µû¶ó¼­ ObjectWeb »ç¿ëÀÚ´Â ¾ÖÇø´À» ÅëÇØ ¿©·¯ È£½ºÆ®»óÀÇ °´Ã¼µé°ú ¼­ºñ½º¸¦ ÁÖ°í ¹ÞÀ» ¼ö ÀÖÀ¸¸ç ¿£ÅÍÇÁ¶óÀÌÁî ±Ô¸ðÀÇ ½Ã½ºÅÛÀ» µðÀÚÀÎÇÏ°í °³¹ßÇÏ°Ô ÇØÁØ´Ù. ¶ÇÇÑ ObjectWebÀº WWW ±â¹ÝÀÇ ½Ã½ºÅÛÀ» ±¸ÃàÇÏ´Â µ¥ ÀÖ¾î ±âÁ¸ÀÇ CGI¿¡¼­ ¹ß»ýÇÑ ¹®Á¦¸¦ ÇØ°áÇÒ »Ó¸¸ ¾Æ´Ï¶ó CORBA¿¡¼­ Á¦°øÇÏ´Â ºÐ»ê °´Ã¼ ±â¼úÀ» ÅëÇØ ÀÎÅÍ³Ý ¾î´À °÷¿¡¼­µçÁö ¼öÇà°¡´ÉÇÑ ½Ã½ºÅÛÀ» ±¸ÃàÇϰí À̸¦ ±Ô¸ðÀÖ°Ô Á¶Á¤ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ ±âÁ¸ÀÇ ÀÚ¹Ù ¾ÖÇø´À» ÅëÇØ CORBA·Î ÀÛ¼ºµÈ ´Ù¸¥ ¾ð¾îÀÇ °´Ã¼µéÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô ¶§¹®¿¡ ÄÄÆ÷³ÍÆ® ¼ÒÇÁÆ®¿þ¾î ±¸Ãà°ú Àç»ç¿ëÀÌ °¡´ÉÇÏ´Ù. ÀÌ·¯ÇÑ ÀÌÀ¯µé·Î ÀÎÇØ ObjectWeb ±â¼úÀº À¥À» ±â¹ÝÀ¸·Î ÇÑ Ç¥ÁØ ½Ã½ºÅÛ ±¸Ãà ¹æ¹ýÀ¸·Î È®»êµÉ °ÍÀÌ¸ç ±âº»ÀÇ CGI³ª ±âŸ ¿¬µ¿ ±â¼úÀº ObjectWeb ±â¼ú·Î ´ëüµÉ °ÍÀÌ´Ù. ƯÈ÷, À¥À» ±â¹ÝÀ¸·Î ÇÑ Á¤º¸½Ã½ºÅÛÁß Å¥¸ð¿Í Á¾·ù°¡ ´Ù¾çÇÑ µ¥ÀÌŸ¿Í ȯ°æÀ§¿¡ ±âÁ¸ÀÇ ½Ã½ºÅÛÀ» ¹ÙÅÁÀ¸·Î »õ·Î¿î Ç¥ÁØ ½Ã½ºÅÛÀ» ±¸ÃàÇÏ·Á ÇÒ ¶§ ObjectWebÀº ±× Áø°¡¸¦ ¹ßÈÖÇÒ °ÍÀÌ´Ù.

Âü°í¹®Çå(References)

[almasi96]
G. Almasi, V juggy Jagannathan, Integrating the WWW and CORBA-based Environment, West virginia University, 1996
URL:http://webstar.cerc.wvu.edu/www4/www4/html
[ashley96]
Ashley McClenaghan, Building a Web from Distributed Objects, ANSA Project, 1996
URL:http://www.ansa.co.uk/ANSA/ISF/96-6-workshop-tms.html
[beitz95]
Ashley Beitz, Renato Iannella, etc, Integrating WWW an\d Middleware, Ausweb95 , 1995
URL:http://www.scu.edu.au/ausweb95/papers/management/beitz/
[condict97]
Michael Condict, Dejan Milojicic, etc, Towards a World-Wide Civilization of Objects, SIGOPS96, 1996
URL:http://www.osf.org/~condict/WebOS/Papers/SIGOPS96/
[iona]
URL:http://www.iona.com/www/Orbix/OrbixWeb/index.htmll
[inmon96]
Inmon, Using the Data Warehousing , ÇÏÀÌÅ×Å© Á¤º¸ , 1996
[joe]
URL:http://www.sun.com/sunsoft./neo
[merle96]
Philippe Merle, Distributed Object Technology abd the Web , 7 May, WWW5 Conference , 1996
URL:http://www.ansa.co.uk/ANSA/ISF/WWW5/DOWpanel.html
[neo]
URL:http://www.sun.com/sunsoft.neo
[OMG96]
CORBA Specification , OMG, 1996
URL:http://www.omg.org
[tresch96]
Markus Tresch, middleware for Distributed Object Management, Tutorial at CIKM96, 1996
[jhpark 96]
jaehyun park, WWW¿Í ºÐ»ê°´Ã¼½Ã½ºÅÛ, WWW-KR Workshop , Aug 17, 1996
[jhpark 97]
jaehyun park, ºñÁö´Ï½º ȯ°æ¿¡¼­ÀÇ CORBA, KIECO , Apr 14, 1997
URL:http://www.aminet.co.kr/~jhpark/wwwcorba.zip
[orfali 96]
Robert Orfali , The Essential Client/Server Survival Guide , 2nd edition , Wiley, 1996
[orfali 97]
Robert Orfali , Dan Harkey , Client/Server Programming with JAVA and CORBA , Wiley, 1997
[resnick]
Ron Resnick , Bring Distributed Objects to the World Wide Web , 1996
URL:http://www.interlog.com/~resnick/javacorb.html
[siegal 96]
CORBA Fundamentals and Programming , Wiley, 1996
[visigenic]
URL:http://www.visigenic.com

Last-Modified : Monday, 21-Apr-97 15:02:22 KST