[Áöµð³ÝÄÚ¸®¾Æ]ÀÛ³â ÇÊÀÚ´Â ¡®´å³Ý ¿£ÅÍÇÁ¶óÀÌÁî ¾ÆÅ°ÅØÃ³¡¯¶ó´Â Á¦¸ñ ÇÏ¿¡ ¸î °³¿ù¿¡ °ÉÃÄ Ä÷³À» ¾´ ÀûÀÌ ÀÖ´Ù. µ¶ÀÚµé Áß¿¡´Â ±â¾ïÇϰí ÀÖ´Â À̰¡ ÀÖÀ¸¸®¶ó »ý°¢µÈ´Ù. ±× ¶§ ´å³Ý ȯ°æ¿¡¼ COM+ ÄÄÆ÷³ÍÆ®¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ¼µµ ¼³¸íÇß°í ¾î¶² ½ÄÀ¸·Î ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¾ÆÅ°ÅØÃ³¸¦ ±¸¼ºÇØ¾ß Çϴ°¡ ¿ª½Ã ¼³¸íÇß´Ù. ÃÖ±Ù¿¡ ÇÊÀÚ°¡ ¹Þ¾Ò´ø ¸î¸î Áú¹®Àº 1³â Àü ÇÊÀÚÀÇ ±ÛÀÌ ºÎÁ·ÇßÀ½À» ´À³¢°Ô ÇØÁÖ¾ú´Ù. Áú¹®Àº ´å³Ý¿¡¼ Á¦°øÇÏ´Â ÄÄÆ÷³ÍÆ® ÇÁ·¹ÀÓ¿öÅ©¿Í ADO.NETÀÇ Æ®·£Àè¼Ç ±â´ÉÀ¸·Î COM+ ¾øÀ̵µ ÄÄÆ÷³ÍÆ® ±â¹Ý ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¼ö ÀÖÁö ¾Ê´À³Ä´Â °ÍÀ̾ú´Ù.
´ë´äÀº ¡®±×·¸´Ù¡¯ÀÌ´Ù. ÇÏÁö¸¸ COM+ ¾øÀÌ ¾ÆÅ°ÅØÆ®¿Í °³¹ßÀÚ´Â Ãä°í, ¹è°íÇÁ°í, ´«°ö ³¢°í, ½½ÇÁ°í ¼·¯¿î °³¹ß °úÁ¤À» °ÅÃÄ¾ß ÇÒÁöµµ ¸ð¸¥´Ù. ¾îÂ÷ÇÇ IT ¼¼°è°¡ ±×·¸µíÀÌ ¾Æ¹« °Íµµ ¾ø´Â »óȲ¿¡¼µµ ¼ÒÇÁÆ®¿þ¾î´Â °³¹ßÇÒ ¼ö ÀÖ´Ù. ÇöÀçÀÇ À©µµ¿ì ¿î¿µÃ¼Á¦°¡ ¾ø´ø ½ÃÀý¿¡´Â À©µµ¿ì¿Í ¸Þ´º¸¦ Á÷Á¢ °³¹ßÀÚµéÀÌ ¸¸µé¾úµí COM+ ¾øÀ̵µ ÄÄÆ÷³ÍÆ® ±â¹Ý ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¼ö ÀÖ´Â °ÍÀº »ç½ÇÀÌ´Ù.
ÇÏÁö¸¸ ±×·¸°Ô ³ì³ìÇÑ °ÍÀÌ ¾Æ´Ï´Ù. À̹ø Ä÷³¿¡¼´Â COM+ Æ®·£Àè¼Ç ±â´É¿¡ ´ëÇÑ ³»¿ëÀ» ¼³¸íÇϰíÀÚ ÇÑ´Ù. ƯÈ÷ ´å³ÝÀÇ °üÁ¡¿¡¼ COM+ Æ®·£Àè¼Ç ÄÄÆ÷³ÍÆ®¸¦ ÀÛ¼ºÇÒ ¶§ÀÇ ÁÖÀÇ »çÇ×À» ¾ð±ÞÇϰí, Æ®·£Àè¼Ç ±â¹Ý ¾ÖÇø®ÄÉÀ̼ǿ¡¼ COM+¸¦ ¹Ýµå½Ã »ç¿ëÇØ¾ß Çϴ°¡¿¡ ´ëÇÑ ÇÊÀÚÀÇ °ßÇØµµ °³ÁøÇϰíÀÚ ÇÑ´Ù.
¶ÇÇÑ µîÀåÇÑÁö ²Ï³ª ¿À·¡µÇ¾úÁö¸¸ Àß ¾Ë·ÁÁöÁö ¾ÊÀº COM+ 1.5ÀÇ »õ·Î¿î ±â´É Áß Æ®·£Àè¼Ç ó¸®¿Í °ü·Ã ÀÖ´Â ¸î °¡Áö »çÇ×µµ ¾ð±ÞÇϰڴÙ. COM+ Æ®·£Àè¼ÇÀ» ¾ð±ÞÇÏ´Â ÀÌÀ¯´Â ¾Õ¼ÀÇ ¡®COM+ Á¸Àç ÀÌÀ¯¡¯¿¡ ´ëÇÑ ´äÀ» Çϱâ À§ÇØ ¸ÕÀú ÀÌÇØÇØ¾ß ÇÒ ³»¿ëÀ̱⠶§¹®ÀÌ´Ù. COM+ÀÇ ´Ù¸¥ ±â´É¿¡ ´ëÇØ¼´Â ¾ð±ÞÀ» ÇÇÇÒ °ÍÀ̹ǷΠ¾ÆÁ÷ COM+¿¡ ´ëÇÑ ±âº» Áö½ÄÀÌ ¾ø´Â µ¶ÀÚ¶ó¸é ÇÊÀÚÀÇ 2002³â 2¿ùÈ£ ±â»ç¸¦ Àб⠹ٶõ´Ù.
COM+ Æ®·£Àè¼Ç ´Ù½Ã º¸±â
COM+´Â Æ®·£Àè¼Ç 󸮸¦ À§ÇØ ´Ù¾çÇÑ ±â´ÉÀ» Á¦°øÇÑ´Ù. ºÐ»ê Æ®·£Àè¼Ç ó¸®, AutoComplete, Æ®·£Àè¼Ç °Ý¸® ¼öÁØ µîÀÌ Æ®·£Àè¼Ç°ú °ü·ÃµÈ COM+ÀÇ ±â´ÉÀ̶ó ÇÒ ¼ö ÀÖ´Ù. °¢°¢ÀÇ ±â´É¿¡ ´ëÇØ ´å³ÝÀÇ °üÁ¡¿¡¼ Á¶±Ý¾¿ »ìÆìº¸µµ·Ï ÇÏÀÚ.
ºÐ»ê Æ®·£Àè¼Ç
ºÐ»ê Æ®·£Àè¼ÇÀ̶õ ³×Æ®¿öÅ©¿¡ ºÐ»êµÇ¾î ÀÖ´Â ÀÚ¿øµé¿¡ ´ëÇØ Æ®·£Àè¼ÇÀ» ¼öÇàÇÏ´Â °ÍÀ» ¸»ÇÑ´Ù. ¿¹¸¦ µé¾î, ¾î¶² ¾ÖÇø®ÄÉÀ̼ÇÀÌ SQL ¼¹ö¿Í ¿À¶óŬ¿¡ µ¥ÀÌÅ͸¦ Æ®·£Àè¼Ç ÇÏ¿¡¼ ¼öÇàÇØ¾ß ÇÑ´Ù¸é ºÐ»ê Æ®·£Àè¼ÇÀ» ÇÊ¿ä·Î ÇÒ °ÍÀÌ´Ù. ´ë°³ÀÇ °æ¿ì ºÐ»ê Æ®·£Àè¼ÇÀº Åνõµ, Ƽ¸Æ½º, ¿£Æ®¶ó¿Í °°Àº TP ¸ð´ÏÅͳª COM+, EJB µî°ú °°Àº ÄÄÆ÷³ÍÆ® ±â¹Ý ¹Ìµé¿þ¾î°¡ ±× ±â´ÉµéÀ» Á¦°øÇÑ´Ù.
ºÐ»ê Æ®·£Àè¼ÇÀÇ ¹Ý´ëµÇ´Â °³³äÀ¸·Î¼ ·ÎÄà Ʈ·£Àè¼ÇÀº ´ÜÀÏ ÀÚ¿ø(µ¥ÀÌÅͺ£À̽º)¿¡ ´ëÇÑ Ä¿¹Ô°ú ·Ñ¹éÀ» ¼öÇàÇϸç 1-phase Ä¿¹ÔÀ¸·Î¼ Æ®·£Àè¼ÇÀ» ¼öÇàÇÑ´Ù. ÇÑÆí ºÐ»ê Æ®·£Àè¼ÇÀÇ ÇÙ½ÉÀº 2-phase Ä¿¹ÔÀ¸·Î º¼ ¼ö ÀÖ´Ù. Ä¿¹Ô(Commit)°ú Ãë¼Ò(Abort)(ºÐ»ê Æ®·£Àè¼Ç¿¡¼´Â ·Ñ¹é(rollback)º¸´Ù´Â abort¶ó´Â ¿ë¾î¸¦ »ç¿ëÇÑ´Ù)¸¦ ¼öÇàÇϴµ¥ µÎ ´Ü°è¸¦ °ÅÄ£´Ù´Â ¸»ÀÌ´Ù. ù ¹øÂ° phase´Â Áغñ ´Ü°è·Î¼, µ¥ÀÌÅͺ£À̽º´Â Ä¿¹ÔÀ» À§ÇÑ ¸ðµç Áغñ¸¦ ¼öÇàÇÑ´Ù. ºÐ»ê Æ®·£Àè¼Ç¿¡ Âü¿©ÇÑ ¸ðµç µ¥ÀÌÅͺ£À̽º°¡ Áغñ ´Ü°è¸¦ ¼º°øÇÑ ÈÄ¿¡¾ß µÎ ¹øÂ° phaseÀÎ Ä¿¹Ô ´Ü°è°¡ ¼öÇàµÇ´Â °ÍÀÌ´Ù. ¸¸¾à ºÐ»ê Æ®·£Àè¼Ç¿¡ Âü¿©ÇÑ ¾î´À ÇÑ µ¥ÀÌÅͺ£À̽º¶óµµ prepare¸¦ ½ÇÆÐÇÑ´Ù¸é µÎ ¹øÂ° phase´Â Ä¿¹ÔÀÌ ¾Æ´Ñ Ãë¼Ò¸¦ ¼öÇàÇÏ°Ô µÉ °ÍÀÌ´Ù.
ÀÌ·¸°Ô °¢ µ¥ÀÌÅͺ£À̽º¿¡°Ô Áغñ ȤÀº Ä¿¹Ô/Ãë¼ÒÀÇ µÎ ´Ü°è¸¦ ¼öÇàÇϵµ·Ï Æ®·£Àè¼ÇÀ» Á¦¾îÇÏ´Â °ÍÀ» TM (Transaction Manager)¶ó ºÎ¸£¸ç ÀÌ´Â MSDTC(Microsoft Distributed Transaction Coordinator)°¡ ´ã´çÇÑ´Ù. Áö±Ý±îÁö ´Ü¼øÈ÷ ºÐ»ê Æ®·£Àè¼Ç¿¡ Âü¿©ÇÏ´Â ¡®µ¥ÀÌÅͺ£À̽º¡¯¶ó°í ÂüÁ¶ÇßÁö¸¸ µ¥ÀÌÅͺ£À̽º ¿Ü¿¡ ´Ù¸¥ ÀÚ¿øµéµµ ºÐ»ê Æ®·£Àè¼Ç¿¡ Âü¿©ÇÒ ¼ö ÀÖ´Ù. ´ëÇ¥ÀûÀÎ ¿¹·Î MSMQ, COM+ÀÇ Shared Property°¡ ÀÌ¿¡ ÇØ´çµÈ´Ù. µû¶ó¼ ºÐ»ê Æ®·£Àè¼Ç¿¡¼´Â Æ®·£Àè¼Ç¿¡ Âü¿©ÇÏ´Â °¢ ÀÚ¿ø¿¡ ´ëÇÑ °ü¸®¸¦ ¸Ã´Â RM(Resource Manager)ÀÌ Á¸ÀçÇÑ´Ù. RMÀÇ ´ëÇ¥ÀûÀÎ ¿¹´Â ¿À¶óŬ, SQL ¼¹ö¿Í °°Àº µ¥ÀÌÅͺ£À̽º¸¦ µé ¼ö ÀÖ´Ù.
¿ä¾àÇØ º¸¸é, COM+ ÄÄÆ÷³ÍÆ®´Â ºÐ»ê Æ®·£Àè¼ÇÀÇ °ü¸®´Â MSDTC¿Í °°Àº TMÀ» ÅëÇØ ¼öÇàÇϸç TMÀº Æ®·£Àè¼Ç¿¡ Âü¿©ÇÑ RMµé(SQL ¼¹ö, ¿À¶óŬ, MSMQ µî)¿¡°Ô 2-phase Ä¿¹ÔÀ» ¼öÇàÇÑ´Ù´Â Á¡ÀÌ´Ù. Áö±Ý±îÁöÀÇ ³íÀÇ´Â ´ëºÎºÐ COM+¿¡ °ü·ÃµÈ ¼ÀûÀ̳ª MSDNÀÇ Ç÷§Æû SDK¸¦ ÀÐÀ¸¸é Á¢ÇÒ ¼ö ÀÖ´Â ³»¿ëÀÌ´Ù. µû¶ó¼ ´ëºÎºÐÀÇ µ¶ÀÚµéÀÌ ÀÌ ³»¿ëÀ» ¾Ë°í(?) ÀÖÀ¸¸®¶ó »ý°¢ÇÑ´Ù.