![]() | |
Sun Java System Message Queue 3 2005Q1 ±â¼ú °³¿ä |
6Àå
Message Queue ¹× J2EEJava 2 Platform, Enterprise Edition(J2EE Ç÷§Æû)Àº ´ÙÁß °èÃþ ¹× ¼¹öÀÇ ½Ã½ºÅÛ ±â´É¿¡ ÀÇÁ¸Çϴ Ŭ¶óÀÌ¾ðÆ® ¿£ÅÍÇÁ¶óÀÌÁî ÀÀ¿ë ÇÁ·Î±×·¥À» È£½ºÆ®Çϴ ǥÁØ ¼¹ö Ç÷§ÆûÀÇ »ç¾çÀÔ´Ï´Ù. J2EE Ç÷§ÆûÀÇ ¿ä±¸ »çÇ× Áß Çϳª´Â ºÐ»ê ±¸¼º ¿ä¼Ò°¡ ¾ÈÁ¤ÀûÀÎ ºñµ¿±â½Ä ¸Þ½ÃÁö ±³È¯À» ÅëÇØ ´Ù¸¥ ±¸¼º ¿ä¼Ò¿Í ¼·Î »óÈ£ ÀÛ¿ëÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. ÀÌ·¯ÇÑ »óÈ£ ÀÛ¿ëÀº JMS °ø±ÞÀÚ¸¦ »ç¿ëÇÏ¸é °¡´ÉÇÕ´Ï´Ù. ½ÇÁ¦·Î Message Queue´Â J2EE Ç÷§ÆûÀÇ ÂüÁ¶ JMS ±¸ÇöÀÔ´Ï´Ù.
ÀÌ Àå¿¡¼´Â J2EE Ç÷§Æû ȯ°æ¿¡¼ JMS Áö¿øÀ» ±¸ÇöÇÑ °á°ú¸¦ »ìÆìº¸°Ú½À´Ï´Ù. ÀÌ ÀýÀº ´ÙÀ½ ³»¿ëÀ¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.
ÀÌ Àå¿¡¼´Â J2EE ±¸¼º ¿ä¼Ò ÇÁ·Î±×·¡¹Ö ¹× ¹èÆ÷¸¦ ¸ðµÎ ´Ù·ç±â ¶§¹®¿¡ ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ßÀÚ¿Í °ü¸®ÀÚ ¸ðµÎ°¡ °ü½ÉÀ» °¡Áú ³»¿ëÀÔ´Ï´Ù.
JMS/J2EE ÇÁ·Î±×·¡¹Ö: Message-Driven BeanJMS ÇÁ·Î±×·¡¹Ö ¸ðµ¨¿¡¼ ¼Ò°³ÇÑ ÀϹÝÀûÀÎ JMS Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¡¹Ö ¸ðµ¨ ¿Ü¿¡µµ J2EE Ç÷§Æû ÀÀ¿ë ÇÁ·Î±×·¥ ÄÁÅØ½ºÆ®¿¡¼ »ç¿ëÇÏ´Â, º¸´Ù Ư¼öÈµÈ JMS ¹öÀüÀÌ ÀÖ½À´Ï´Ù. ÀÌ Æ¯¼öÈµÈ JMS Ŭ¶óÀÌ¾ðÆ®¸¦ Message-Driven BeanÀ̶ó°í ºÎ¸£¸ç, EJB 2.0 »ç¾ç(http://java.sun.com/products/ejb/docs.html)¿¡ ÁöÁ¤µÈ EJB(Enterprise JavaBeans) ±¸¼º ¿ä¼Ò °è¿ Áß ÇϳªÀÔ´Ï´Ù.
Message-Driven BeanÀÌ ÇÊ¿äÇÑ ÀÌÀ¯´Â ´Ù¸¥ EJB ±¸¼º ¿ä¼Ò(Session Bean°ú Entity Bean)µéÀÌ µ¿±â½Ä È£Ã⸸ °¡´ÉÇϱ⠶§¹®ÀÔ´Ï´Ù. ÀÌ EJB ±¸¼º ¿ä¼ÒµéÀº Ç¥ÁØ EJB ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ¼¸¸ ¾×¼¼½ºÇÒ ¼ö ÀÖÀ¸¹Ç·Î ºñµ¿±â½ÄÀ¸·Î ¸Þ½ÃÁö¸¦ ¼ö½ÅÇÒ ¸ÞÄ¿´ÏÁòÀÌ ¾ø½À´Ï´Ù.
±×·¯³ª ºñµ¿±â½Ä ¸Þ½Ã¡Àº ¸¹Àº ¿£ÅÍÇÁ¶óÀÌÁî ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ ÇÊ¿äÇÕ´Ï´Ù. ±×·¯ÇÑ ÀÀ¿ë ÇÁ·Î±×·¥ Áß ´ëºÎºÐ¿¡¼´Â ¼¹öÃø ±¸¼º ¿ä¼Ò°¡ ¼¹ö ÀÚ¿øÀ» µ¶Á¡ÇÏÁö ¾ÊÀ¸¸é¼ »óÈ£ Åë½ÅÇϰí ÀÀ´äÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù. Áï ¸Þ½ÃÁö »ý¼ºÀÚ¿Í ¹ÐÁ¢ÇÏ°Ô ¿¬°áµÇÁö ¾ÊÀ¸¸é¼ ¸Þ½ÃÁö ¼ö½Å ¹× »ç¿ëÀÌ °¡´ÉÇÑ EJB ±¸¼º ¿ä¼Ò°¡ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ±â´ÉÀº ¼¹öÃø ±¸¼º ¿ä¼Ò°¡ ÀÀ¿ë ÇÁ·Î±×·¥ À̺¥Æ®¿¡ ÀÀ´äÇØ¾ß ÇÏ´Â ¸ðµç ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ ÇÊ¿äÇÕ´Ï´Ù. ¶ÇÇÑ ¿£ÅÍÇÁ¶óÀÌÁî ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼µµ ·Îµå Áõ°¡¿¡ µû¶ó ÀÌ ±â´ÉÀÌ È®ÀåµÇ¾î¾ß ÇÕ´Ï´Ù.
MDB(Message-Driven Bean)´Â ƯÁ¤ EJB ÄÁÅ×À̳Ê(Áö¿øÇÏ´Â ±¸¼º ¿ä¼Ò¿¡ ´ëÇØ ºÐ»ê ¼ºñ½º¸¦ Á¦°øÇÏ´Â ¼ÒÇÁÆ®¿þ¾î ȯ°æ)°¡ Áö¿øÇϴ ƯÁ¤ EJB ±¸¼º ¿ä¼ÒÀÔ´Ï´Ù.
Message-Driven Bean MDB´Â JMS MessageListener ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â JMS ¸Þ½ÃÁö »ç¿ëÀÚÀÔ´Ï´Ù. onMessage ¸Þ¼Òµå(MDB °³¹ßÀÚ°¡ ÀÛ¼º)´Â MDB ÄÁÅ×À̳ʰ¡ ¸Þ½ÃÁö¸¦ ¼ö½ÅÇÒ ¶§ È£ÃâµË´Ï´Ù. ÀÌ onMessage() ¸Þ¼Òµå´Â Ç¥ÁØ MessageListener °´Ã¼ÀÇ onMessage() ¸Þ¼Òµåó·³ ¸Þ½ÃÁö¸¦ »ç¿ëÇÕ´Ï´Ù. ´Ù¸¥ EJB ±¸¼º ¿ä¼Ò¿¡¼Ã³·³ MDB¿¡ ´ëÇØ ¸Þ¼Òµå¸¦ ¿ø°Ý È£ÃâÇÏÁö ¾ÊÀ¸¹Ç·Î MDB¿Í °ü·ÃµÈ Ȩ ¶Ç´Â ¿ø°Ý ÀÎÅÍÆäÀ̽º´Â ¾ø½À´Ï´Ù. MDB´Â ´ÜÀÏ ´ë»óÀ¸·ÎºÎÅÍÀÇ ¸Þ½ÃÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×¸² 6-1¿¡¼ È®ÀÎÇÒ ¼ö ÀÖµíÀÌ µ¶¸³Çü JMS ÀÀ¿ë ÇÁ·Î±×·¥, JMS ±¸¼º ¿ä¼Ò, EJB ±¸¼º ¿ä¼Ò ¶Ç´Â À¥ ±¸¼º ¿ä¼Ò¿¡¼ ¸Þ½ÃÁö¸¦ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
±×¸² 6-1 MDB¿ÍÀÇ ¸Þ½ÃÁö
MDB ÄÁÅ×ÀÌ³Ê MDB ÀνºÅϽº¸¦ »ý¼ºÇÏ°í ºñµ¿±â½ÄÀ¸·Î ¸Þ½ÃÁö¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤ÇÏ´Â ¿ªÇÒÀ» Çϴ Ư¼öÈµÈ EJB ÄÁÅ×À̳ʰ¡ MDB¸¦ Áö¿øÇÕ´Ï´Ù. ¿©±â¿¡´Â ¸Þ½ÃÁö ¼ºñ½º¿ÍÀÇ ¿¬°á ¼³Á¤(ÀÎÁõ Æ÷ÇÔ), ÁöÁ¤µÈ ´ë»ó°úÀÇ ¼¼¼Ç Ç® »ý¼º, ¼¼¼Ç Ç® ¹× °ü·Ã MDB ÀνºÅϽº »çÀÌ¿¡¼ÀÇ ¼ö½Å ¸Þ½ÃÁö ¹èÆ÷ °ü¸®°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ ÄÁÅ×À̳ʴ MDB ÀνºÅϽºÀÇ ¶óÀÌÇÁ»çÀÌŬÀ» Á¦¾îÇϹǷΠMDB ÀνºÅϽº Ç®ÀÌ ¹Þ´Â ¸Þ½ÃÁö ·Îµå¸¦ ¼ö¿ëÇÒ ¼ö ÀÖµµ·Ï °ü¸®ÇÕ´Ï´Ù.
MDB¿Í °ü·Ã ÀÖ´Â ¹èÆ÷ ¼³¸íÀÚ´Â ÄÁÅ×À̳ʰ¡ ¸Þ½ÃÁö »ç¿ë ¼³Á¤ ½Ã »ç¿ëÇÏ´Â °ü¸® ´ë»ó °´Ã¼, Áï ¿¬°á ÆÑÅ丮¿Í ´ë»óÀÇ JNDI Á¶È¸ À̸§À» ÁöÁ¤ÇÕ´Ï´Ù. ¶ÇÇÑ ¹èÆ÷ ¼³¸íÀÚ´Â ¹èÆ÷ µµ±¸°¡ ÄÁÅ×ÀÌ³Ê ±¸¼º ½Ã ÇÊ¿äÇÑ ´Ù¸¥ Á¤º¸¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÄÁÅ×ÀÌ³Ê °¢°¢Àº ´ÜÀÏ MDB·Î¸¸ ÀÌ·ç¾îÁø ÀνºÅϽº¸¦ Áö¿øÇÕ´Ï´Ù.
J2EE Application Server Áö¿øJ2EE ±¸Á¶((http://java.sun.com/j2ee/download.html#platformspec)ÀÇ J2EE Ç÷§Æû »ç¾ç ÂüÁ¶)¿¡¼ EJB ÄÁÅ×À̳ʴ J2EE Application Server°¡ È£½ºÆÃÇÕ´Ï´Ù. Application Server´Â Æ®·£Àè¼Ç °ü¸®ÀÚ, Áö¼Ó¼º °ü¸®ÀÚ, À̸§ ¼ºñ½º, JMS °ø±ÞÀÚ(¸Þ½Ã¡ ¹× MDBÀÇ °æ¿ì) µî°ú °°Àº ´Ù¾çÇÑ ÄÁÅ×À̳ʰ¡ ÇÊ¿ä·Î ÇÏ´Â ÀÚ¿øÀ» Á¦°øÇÕ´Ï´Ù.
Sun Java System Application Server¿¡¼ JMS ¸Þ½Ã¡ ÀÚ¿øÀº Sun Java¢â System Message Queue°¡ Á¦°øÇÕ´Ï´Ù.
- Sun Java System Application Server 7.0ÀÇ °æ¿ì Message Queue ¸Þ½Ã¡ ½Ã½ºÅÛÀÌ Application Server¿¡ ¿ø½Ã JMS °ø±ÞÀÚ·Î ÅëÇյǾî ÀÖ½À´Ï´Ù.
- Sun J2EE 1.4 Application ServerÀÇ °æ¿ì Message Queue°¡ Application Server¿¡ ³»Àå JMS ÀÚ¿ø ¾î´ðÅÍ·Î Ç÷¯±× ÀεǾî ÀÖ½À´Ï´Ù.
- Application ServerÀÇ ÇâÈÄ ¸±¸®½º¿¡¼´Â Message Queue°¡ Ç¥ÁØ ÀÚ¿ø ¾î´ðÅÍ ¹èÆ÷ ¹× ±¸¼º ¹æ¹ýÀ» »ç¿ëÇÏ´Â Application Server¿¡ Ç÷¯±× Àε˴ϴÙ.
JMS ÀÚ¿ø ¾î´ðÅÍ
ÀÚ¿ø ¾î´ðÅÍ´Â J2EE 1.4¸¦ ÁؼöÇÏ´Â Application Server¿¡ Ãß°¡ ±â´ÉÀ» Ç÷¯±× ÀÎÇϴ ǥÁØÈµÈ ¹æ¹ýÀÔ´Ï´Ù. Ç¥ÁØÀº J2EE Connector Architecture(J2EECA) 1.5 »ç¾ç¿¡ ÀÇÇØ Á¤Àǵ˴ϴÙ. ÀÌ ±¸Á¶¸¦ ÅëÇØ J2EE 1.4¸¦ ÁؼöÇÏ´Â Application Server´Â Ç¥ÁØ ¹æ½ÄÀ¸·Î ¿ÜºÎ ½Ã½ºÅÛ°ú »óÈ£ ÀÛ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿ÜºÎ ½Ã½ºÅÛÀº ´Ù¾çÇÑ EIS(Enterprise Information System)¸¦ ºñ·ÔÇÏ¿© JMS °ø±ÞÀÚ¿Í °°Àº ´Ù¾çÇÑ ¸Þ½Ã¡ ½Ã½ºÅÛÀ» Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. Message Queue´Â Application Server°¡ Message Queue¸¦ JMS °ø±ÞÀÚ·Î »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â JMS ÀÚ¿ø ¾î´ðÅ͸¦ Æ÷ÇÔÇÕ´Ï´Ù.
J2EECA 1.5¸¦ ÅëÇØ °¡´ÉÇÏ°Ô µÈ Ç¥ÁØÈµÈ »óÈ£ ÀÛ¿ëÀ¸·Î´Â ´Ù¾çÇÑ Á¾·ùÀÇ Message-Driven Bean ÄÁÅ×À̳ʿ¡ ´ëÇÑ Áö¿øÀ» ºñ·ÔÇÏ¿© ¿¬°á Ç®¸µ, ½º·¹µå Ç®¸µ, Æ®·£Àè¼Ç ¹× º¸¾È ÄÁÅØ½ºÆ® ÀüÆÄ¸¦ µé ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ ÀÌ »ç¾çÀº ¿¬°á ÆÑÅ丮 ¹× ±âŸ °ü¸® °´Ã¼¸¦ ¸¸µå´Â Ç¥ÁØÈµÈ ¹æ½Äµµ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
JMS ÀÚ¿ø ¾î´ðÅ͸¦ Application Server¿¡ Ç÷¯±× ÀÎÇϸé Application Server¿¡¼ ¹èÆ÷µÇ¾î ½ÇÇà ÁßÀÎ J2EE ±¸¼º ¿ä¼Ò°¡ JMS ¸Þ½ÃÁö¸¦ ±³È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ±¸¼º ¿ä¼Ò¿¡ ÇÊ¿äÇÑ JMS ¿¬°á ÆÑÅ丮 ¹× ´ë»ó °ü¸® °´Ã¼´Â J2EE Application Server °ü¸® µµ±¸¸¦ »ç¿ëÇÏ¿© ¸¸µé°í ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
±×·¯³ª ¸Þ½ÃÁö ¼¹ö ¹× ¹°¸®Àû ´ë»ó °ü¸®¿Í °°Àº ´Ù¸¥ °ü¸® ÀÛ¾÷Àº J2EECA »ç¾ç¿¡ Æ÷ÇԵǾî ÀÖÁö ¾ÊÀ¸¹Ç·Î °ø±ÞÀÚ °íÀ¯ÀÇ µµ±¸¸¦ ÅëÇØ¼¸¸ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.
Message Queue ÀÚ¿ø ¾î´ðÅÍ´Â Sun J2EE 1.4 Application Server¿¡ ÅëÇյǾî ÀÖ½À´Ï´Ù. ±×·¯³ª, ¾ÆÁ÷ ´Ù¸¥ J2EE 1.4 Application Server¿¡¼´Â ÀÎÁõµÇÁö ¾Ê¾Ò½À´Ï´Ù.
Message Queue ÀÚ¿ø ¾î´ðÅÍ´Â ´ÜÀÏ ÆÄÀÏ(imqjmsra.rar)À̸ç, ÀÌ ÆÄÀÏÀÌ ÀÖ´Â µð·ºÅ丮´Â ¿î¿µ üÁ¦¿¡ µû¶ó ´Ù¸¨´Ï´Ù(Message Queue °ü¸® ¼³¸í¼ ÂüÁ¶). imqjmsra.rar ÆÄÀÏÀº ÀÚ¿ø ¾î´ðÅÍ ¹èÆ÷ ¼³¸íÀÚ(ra.xml)¸¦ ºñ·ÔÇÏ¿© ¾î´ðÅ͸¦ »ç¿ëÇϱâ À§ÇØ Application Server¿¡¼ ÇÊ¿äÇÑ JAR ÆÄÀϵµ Æ÷ÇÔÇÕ´Ï´Ù.
¸ðµç J2EE -1.4 ȣȯ Application Server¿¡¼ ÇØ´ç Application Server¿Í ÇÔ²² Á¦°øµÇ´Â ÀÚ¿ø ¾î´ðÅÍ ¹èÆ÷ ¹× ±¸¼º Áöħ¿¡ µû¶ó Message Queue ÀÚ¿ø ¾î´ðÅ͸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. »ó¿ë J2EE 1.4 Application Server°¡ Ãâ½ÃµÇ°í Message Queue ÀÚ¿ø ¾î´ðÅͰ¡ ÀÌ·¯ÇÑ Application Server¿¡¼ ÀÎÁõµÇ¸é Message Queue ¹®¼¿¡¼ °ü·Ã ¹èÆ÷ ¹× ±¸¼º ÀýÂ÷¿¡ ´ëÇÑ ±¸Ã¼ÀûÀÎ Á¤º¸¸¦ Á¦°øÇÒ °ÍÀÔ´Ï´Ù.