Sun Java System Message Queue 3 2005Q4 ±â¼ú °³¿ä |
2Àå
Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¡¹Ö ¸ðµ¨ÀÌ Àå¿¡¼´Â Message Queue Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥ÀÇ ±âº»ÀûÀÎ ³»¿ë¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. ÀÌ ÀåÀº ´ÙÀ½ ³»¿ëÀ¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.
ÀÌ Àå¿¡¼´Â Java Ŭ¶óÀ̾ðÆ®ÀÇ ¼³°è¿Í ±¸ÇöÀ» Áß½ÉÀ¸·Î ¼³¸íÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î C Ŭ¶óÀ̾ðÆ® ¼³°è´Â Java Ŭ¶óÀ̾ðÆ® ¼³°è¿Í °ÅÀÇ ºñ½ÁÇÕ´Ï´Ù. ÀÌ ÀåÀÇ ¸¶Áö¸· Àý¿¡¼´Â Java Ŭ¶óÀ̾ðÆ®¿Í C Ŭ¶óÀ̾ðÆ®ÀÇ Â÷ÀÌÁ¡¿¡ ´ëÇØ ¿ä¾àÇÕ´Ï´Ù. Message Queue Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Java Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼ ¹× C Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
3Àå, "Message Queue ¼ºñ½º"¿¡¼´Â Message Queue ¼ºñ½º¸¦ »ç¿ëÇÏ¿© ¸Þ½Ã¡ ¼º´ÉÀ» Áö¿ø, °ü¸® ¹× Á¶Á¤ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
¼³°è ¹× ¼º´ÉMessage Queue ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ µ¿ÀÛÀº Ŭ¶óÀ̾ðÆ® ¼³°è, ¿¬°á ±¸¼º, ºê·ÎÄ¿ ±¸¼º, ºê·ÎÄ¿ Á¶Á¤, ÀÚ¿ø °ü¸® µî°ú °°Àº ¿©·¯ °¡Áö ¿ä¼Ò¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ÀÌ Áß ÀϺδ °³¹ßÀÚ¿¡°Ô Ã¥ÀÓÀÌ ÀÖ°í ³ª¸ÓÁö´Â °ü¸®ÀÚ¿Í °ü·ÃµÇ¾î ÀÖ½À´Ï´Ù. ±×·¯³ª, °³¹ßÀÚ´Â Message Queue ¼ºñ½º¿¡¼ ÀÀ¿ë ÇÁ·Î±×·¥ ¼³°è¸¦ Áö¿ø ¹× È®ÀåÇÏ´Â ¹æ¹ýÀ» Àß ¾Ë°í ÀÖ¾î¾ß ÇÏ°í, °ü¸®ÀÚ´Â ÀÀ¿ë ÇÁ·Î±×·¥À» Á¶Á¤ÇØ¾ß ÇÒ ¶§ ¼³°è ¸ñÇ¥¸¦ Àß ¾Ë°í ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¸Þ½Ã¡ µ¿ÀÛÀº Àç¼³°è ¹× ¸ð´ÏÅ͸µ ÈÄ Á¶Á¤À» ÅëÇØ ÃÖÀû鵃 ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼, ¿ì¼öÇÑ Message Queue ÀÀ¿ë ÇÁ·Î±×·¥ ¸¸µé±âÀÇ ÇÙ½ÉÀº °³¹ßÀÚ¿Í °ü¸®ÀÚ°¡ ÀÀ¿ë ÇÁ·Î±×·¥ ¶óÀÌÇÁ»çÀÌŬÀÇ °¢ ´Ü°è¿¡¼ ½ÇÇöµÉ ¼ö ÀÖ´Â ³»¿ëÀ» ÀÌÇØÇÏ°í ¿øÇÏ´Â µ¿ÀÛ°ú °üÂûµÈ µ¿ÀÛ¿¡ ´ëÇÑ Á¤º¸¸¦ °øÀ¯ÇÏ´Â °ÍÀÔ´Ï´Ù.
¸Þ½Ã¡ µµ¸ÞÀα¸¼º ¿ä¼Ò¿Í ÀÀ¿ë ÇÁ·Î±×·¥Àº ¸Þ½Ã¡ ¹Ìµé¿þ¾î¸¦ ÅëÇØ ¸Þ½ÃÁö¸¦ »ý¼º ¹× »ç¿ëÇÏ¿© Åë½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. JMS API´Â ÀÌ Åë½ÅÀ» Á¦¾îÇÏ´Â µÎ °¡Áö ÆÐÅÏ ¶Ç´Â ¸Þ½Ã¡ µµ¸ÞÀÎ(ÁöÁ¡°£ ¸Þ½Ã¡ ¹× °Ô½Ã/°¡ÀÔ ¸Þ½Ã¡)À» Á¤ÀÇÇÕ´Ï´Ù. JMS API´Â ÀÌ·¯ÇÑ ÆÐÅÏÀ» Áö¿øÇϵµ·Ï ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù. ¿¬°á, ¼¼¼Ç, »ý¼ºÀÚ, »ç¿ëÀÚ, ´ë»ó, ¸Þ½ÃÁö µî°ú °°Àº ±âº» JMS °´Ã¼´Â µÎ µµ¸ÞÀÎ ¸ðµÎ¿¡¼ ¸Þ½Ã¡ µ¿ÀÛÀ» ÁöÁ¤ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù.
ÁöÁ¡°£ ¸Þ½Ã¡
ÁöÁ¡°£ µµ¸ÞÀο¡¼´Â ¸Þ½ÃÁö »ý¼ºÀÚ¸¦ ¹ß½ÅÀÚ¶ó ÇÏ°í »ç¿ëÀÚ¸¦ ¼ö½ÅÀÚ¶ó°í ÇÕ´Ï´Ù. ¸Þ½ÃÁö »ý¼ºÀÚ¿Í »ç¿ëÀÚ´Â ´ë±â¿À̶ó´Â ´ë»óÀ» ÅëÇØ ¸Þ½ÃÁö¸¦ ±³È¯ÇÕ´Ï´Ù. Áï, ¹ß½ÅÀÚ°¡ ´ë±â¿¿¡ ¸Þ½ÃÁö¸¦ »ý¼ºÇÏ°í ¼ö½ÅÀÚ°¡ ´ë±â¿¿¡¼ ¸Þ½ÃÁö¸¦ »ç¿ëÇÕ´Ï´Ù.
±×¸² 2-1¿¡¼´Â ÁöÁ¡°£ µµ¸ÞÀο¡¼ °¡Àå °£´ÜÇÑ ¸Þ½Ã¡ ÀÛ¾÷À» º¸¿©ÁÝ´Ï´Ù. MyQueueSender´Â Msg1À» ´ë±â¿ ´ë»ó MyQueue1·Î º¸³À´Ï´Ù. ±×·¯¸é MyQueueReceiver°¡ MyQueue1¿¡¼ ¸Þ½ÃÁö¸¦ °¡Á®¿É´Ï´Ù.
±×¸² 2-1 °£´ÜÇÑ ÁöÁ¡°£ ¸Þ½Ã¡
±×¸² 2-2¿¡¼´Â º¸´Ù º¹ÀâÇÑ ÁöÁ¡°£ ¸Þ½Ã¡ ±×¸²À» »ç¿ëÇÏ¿© ÀÌ µµ¸ÞÀο¡¼ÀÇ °¡´É¼ºÀ» º¸¿©ÁÝ´Ï´Ù. ¹ß½ÅÀÚÀÎ MyQSender1°ú MyQSender2°¡ µ¿ÀÏÇÑ ¿¬°áÀ» »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ MyQueue1·Î º¸³À´Ï´Ù. MyQSender3Àº Ãß°¡ ¿¬°áÀ» »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ MyQueue1·Î º¸³À´Ï´Ù. ¼ö½ÅÇÏ´Â ÂÊ¿¡¼´Â MyQReceiver1ÀÌ MyQueue1, MyQReceiver2 ¹× MyQReceiver3ÀÇ ¸Þ½ÃÁö¸¦ »ç¿ëÇÏ°í, µ¿ÀÏÇÑ ¿¬°áÀ» °øÀ¯ÇÏ¿© MyQueue1ÀÇ ¸Þ½ÃÁö¸¦ »ç¿ëÇÕ´Ï´Ù.
±×¸² 2-2 º¹ÀâÇÑ ÁöÁ¡°£ ¸Þ½Ã¡
´õ¿í º¹ÀâÇÑ ÀÌ ±×¸²Àº ÁöÁ¡°£ ¸Þ½Ã¡¿¡ ´ëÇÑ ¸¹Àº Ãß°¡ »çÇ×À» ³ªÅ¸³À´Ï´Ù.
- ¿©·¯ »ý¼ºÀÚ°¡ µ¿ÀÏÇÑ ´ë±â¿¿¡ ¸Þ½ÃÁö¸¦ º¸³¾ ¼ö ÀÖ½À´Ï´Ù. »ý¼ºÀÚ´Â ¿¬°áÀ» °øÀ¯Çϰųª ¼·Î ´Ù¸¥ ¿¬°áÀ» »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ¸ðµÎ µ¿ÀÏÇÑ ´ë±â¿¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
- ¿©·¯ ¼ö½ÅÀÚ°¡ µ¿ÀÏÇÑ ´ë±â¿¿¡¼ ¸Þ½ÃÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, °¢°¢ÀÇ ¸Þ½ÃÁö´Â ÇÑ ¸íÀÇ ¼ö½ÅÀÚ¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼ Msg1, Msg2 ¹× Msg3Àº ¼·Î ´Ù¸¥ ¼ö½ÅÀÚ°¡ »ç¿ëÇÕ´Ï´Ù. ÀÌ°ÍÀº Message Queue È®ÀåÀÔ´Ï´Ù.
- ¼ö½ÅÀÚ´Â ¿¬°áÀ» °øÀ¯Çϰųª ¼·Î ´Ù¸¥ ¿¬°áÀ» »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ¸ðµÎ µ¿ÀÏÇÑ ´ë±â¿¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Message Queue È®ÀåÀÔ´Ï´Ù.
- ¹ß½ÅÀÚ¿Í ¼ö½ÅÀڴ ŸÀֿ̹¡ ±¸¾Ö ¹ÞÁö ¾Ê½À´Ï´Ù. Áï, ¼ö½ÅÀڴ Ŭ¶óÀ̾ðÆ®°¡ ¸Þ½ÃÁö¸¦ º¸³¾ ¶§ ½ÇÇà ¿©ºÎ¿Í °ü°è ¾øÀÌ ¸Þ½ÃÁö¸¦ ºÒ·¯¿Ã ¼ö ÀÖ½À´Ï´Ù.
- ¹ß½ÅÀÚ¿Í ¼ö½ÅÀÚ¸¦ ·±Å¸ÀÓ¿¡ µ¿ÀûÀ¸·Î Ãß°¡ ¹× »èÁ¦ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÇÊ¿ä¿¡ µû¶ó ¸Þ½Ã¡ ½Ã½ºÅÛÀ» È®´ëÇϰųª Ãà¼ÒÇÒ ¼ö ÀÖ½À´Ï´Ù.
- ¸Þ½ÃÁö´Â º¸³½ ¼ø¼´ë·Î ´ë±â¿¿¡ ¹èÄ¡µÇÁö¸¸ »ç¿ëµÇ´Â ¼ø¼´Â ¸Þ½ÃÁö ¸¸·áÀÏ, ¸Þ½ÃÁö ¿ì¼± ¼øÀ§, ¸Þ½ÃÁö¸¦ »ç¿ëÇÏ´Â µ¥ ¼±ÅñⰡ »ç¿ëµÇ´ÂÁö ¿©ºÎ µî°ú °°Àº ¿ä¼Ò¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
ÁöÁ¡°£ ¸ðµ¨Àº ´ÙÀ½°ú °°Àº ¸¹Àº ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù.
- ¿©·¯ ¼ö½ÅÀÚ°¡ µ¿ÀÏÇÑ ´ë±â¿¿¡¼ ¸Þ½ÃÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¸Þ½ÃÁö°¡ ¼ö½ÅµÇ´Â ¼ø¼°¡ Áß¿äÇÏÁö ¾ÊÀº °æ¿ì ¸Þ½ÃÁö »ç¿ë ·Îµå ±ÕÇüÀ» Á¶Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Message Queue È®ÀåÀÔ´Ï´Ù.
- ´ë±â¿À» ´ë»óÀ¸·Î ÇÏ´Â ¸Þ½ÃÁö´Â ¼ö½ÅÀÚ°¡ ¾ø´õ¶óµµ Ç×»ó º¸°üµË´Ï´Ù.
- Java Ŭ¶óÀ̾ðÆ®´Â ´ë±â¿ ºê¶ó¿ìÀú °´Ã¼¸¦ »ç¿ëÇÏ¿© ´ë±â¿ÀÇ ³»¿ëÀ» Á¶»çÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·± ´ÙÀ½ ÀÌ Á¶»ç¸¦ ÅëÇØ ¼öÁýÇÑ Á¤º¸¸¦ ±â¹ÝÀ¸·Î ¸Þ½ÃÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Áï, »ç¿ë ¸ðµ¨Àº ÀϹÝÀûÀ¸·Î ¼±ÀÔ¼±Ãâ(FIFO)ÀÌÁö¸¸ »ç¿ëÀÚ´Â ¿øÇÏ´Â ¸Þ½ÃÁö¸¦ ¾Ë°í ÀÖ´Â °æ¿ì ¸Þ½ÃÁö ¼±Åñ⸦ »ç¿ëÇÏ¿© ´ë±â¿ÀÇ Çìµå¿¡ ¾ø´Â ¸Þ½ÃÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, °ü¸® Ŭ¶óÀ̾ðÆ®µµ ´ë±â¿ ºê¶ó¿ìÀú¸¦ »ç¿ëÇÏ¿© ´ë±â¿ÀÇ ³»¿ëÀ» ¸ð´ÏÅÍÇÒ ¼ö ÀÖ½À´Ï´Ù.
°Ô½Ã/°¡ÀÔ ¸Þ½Ã¡
°Ô½Ã/°¡ÀÔ µµ¸ÞÀο¡¼´Â ¸Þ½ÃÁö »ý¼ºÀÚ¸¦ °Ô½ÃÀÚ¶ó ÇÏ°í ¸Þ½ÃÁö »ç¿ëÀÚ¸¦ °¡ÀÔÀÚ¶ó°í ÇÕ´Ï´Ù. °Ô½ÃÀÚ¿Í °¡ÀÔÀÚ´Â ÁÖÁ¦¶ó´Â ´ë»óÀ» ÅëÇØ ¸Þ½ÃÁö¸¦ ±³È¯ÇÕ´Ï´Ù. Áï, °Ô½ÃÀÚ´Â ÁÖÁ¦¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¦ »ý¼ºÇÏ°í, °¡ÀÔÀÚ´Â ÁÖÁ¦¿¡ °¡ÀÔÇÑ ´ÙÀ½ ÇØ´ç ÁÖÁ¦¿¡¼ ¸Þ½ÃÁö¸¦ »ç¿ëÇÕ´Ï´Ù.
±×¸² 2-3¿¡¼´Â °Ô½Ã/°¡ÀÔ µµ¸ÞÀÎÀÇ °£´ÜÇÑ ¸Þ½Ã¡ ÀÛ¾÷À» º¸¿©ÁÝ´Ï´Ù. MyTopicPublisher´Â Msg1À» ´ë»óÀÎ MyTopic¿¡ °Ô½ÃÇÕ´Ï´Ù. ±×·¯¸é MyTopicSubscriber1°ú MyTopicSubscriber2°¡ °¢°¢ MyTopic¿¡¼ Msg1ÀÇ º¹»çº»À» ¹Þ½À´Ï´Ù.
±×¸² 2-3 °£´ÜÇÑ °Ô½Ã/°¡ÀÔ ¸Þ½Ã¡
°Ô½Ã/°¡ÀÔ ¸ðµ¨¿¡´Â ¿©·¯ ¸íÀÇ °¡ÀÔÀÚ°¡ ÇÊ¿äÇÏÁö ¾ÊÁö¸¸, ±×¸²¿¡¼´Â ÀÌ µµ¸ÞÀÎÀ» »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ ºê·Îµåij½ºÆ®ÇÒ ¼ö ÀÖ´Ù´Â »ç½ÇÀ» °Á¶Çϱâ À§ÇØ µÎ ¸íÀÇ °¡ÀÔÀÚ¸¦ Ç¥½ÃÇß½À´Ï´Ù. ÁÖÁ¦¿¡ ´ëÇÑ ¸ðµç °¡ÀÔÀÚ°¡ ÇØ´ç ÁÖÁ¦¿¡ °Ô½ÃµÈ ¸Þ½ÃÁöÀÇ º¹»çº»À» °®½À´Ï´Ù.
°¡ÀÔÀÚ´Â ºñ¿µ±¸ °¡ÀÔÀÚÀÏ ¼öµµ ÀÖ°í ¿µ±¸ °¡ÀÔÀÚÀÏ ¼öµµ ÀÖ½À´Ï´Ù. ºê·ÎÄ¿´Â ¸ðµç È°¼º °¡ÀÔÀÚ¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¦ º¸°üÇÏÁö¸¸, È°¼º °¡ÀÔÀÚ°¡ ¿µ±¸ °¡ÀÔÀÚÀÎ °æ¿ì¿¡´Â ºñÈ°¼º °¡ÀÔÀÚ¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¸ º¸°üÇÕ´Ï´Ù.
±×¸² 2-4¿¡¼´Â ÀÌ ÆÐÅÏÀÌ Á¦°øÇÏ´Â °¡´É¼ºÀ» ¼³¸íÇϱâ À§ÇØ ´õ º¹ÀâÇÑ °Ô½Ã/°¡ÀÔ ¸Þ½Ã¡ ±×¸²À» º¸¿©ÁÝ´Ï´Ù. ¿©·¯ ¸íÀÇ »ý¼ºÀÚ°¡ Topic1 ´ë»ó¿¡ ¸Þ½ÃÁö¸¦ °Ô½ÃÇÕ´Ï´Ù. ¿©·¯ ¸íÀÇ °¡ÀÔÀÚ°¡ Topic1 ´ë»ó¿¡¼ ¸Þ½ÃÁö¸¦ »ç¿ëÇÕ´Ï´Ù. °¡ÀÔÀÚ°¡ ¼±Åñ⸦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ ÇÊÅ͸µÇÏÁö ¾Ê´Â ÇÑ °¢ °¡ÀÔÀÚ´Â ¼±ÅÃÇÑ ÁÖÁ¦¿¡ °Ô½ÃµÈ ¸ðµç ¸Þ½ÃÁö¸¦ ¹Þ°Ô µË´Ï´Ù. ±×¸² 2-4¿¡¼´Â MyTSubscriber2°¡ Msg2¸¦ ÇÊÅ͸µÇß½À´Ï´Ù.
±×¸² 2-4 º¹ÀâÇÑ °Ô½Ã/°¡ÀÔ ¸Þ½Ã¡
´õ¿í º¹ÀâÇÑ ÀÌ ±×¸²Àº °Ô½Ã/°¡ÀÔÀÚ ¸Þ½Ã¡¿¡ ´ëÇÑ ¸¹Àº Ãß°¡ »çÇ×À» ³ªÅ¸³À´Ï´Ù.
- ¿©·¯ »ý¼ºÀÚ°¡ µ¿ÀÏÇÑ ÁÖÁ¦¿¡ ¸Þ½ÃÁö¸¦ °Ô½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. »ý¼ºÀÚ´Â ¿¬°áÀ» °øÀ¯Çϰųª ¼·Î ´Ù¸¥ ¿¬°áÀ» »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ¸ðµÎ µ¿ÀÏÇÑ ÁÖÁ¦¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
- ¿©·¯ °¡ÀÔÀÚ°¡ µ¿ÀÏÇÑ ÁÖÁ¦¿¡¼ ¸Þ½ÃÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. °¡ÀÔÀÚ´Â ¼±Åñ⸦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ ÇÊÅ͸µÇÏÁö ¾Ê°Å³ª »ç¿ëÇϱâ ÀÌÀü¿¡ ¸Þ½ÃÁö°¡ ¸¸·áµÈ °æ¿ì°¡ ¾Æ´Ï¸é ÁÖÁ¦¿¡ °Ô½ÃµÈ ¸ðµç ¸Þ½ÃÁö¸¦ °Ë»öÇÕ´Ï´Ù.
- °¡ÀÔÀÚ´Â ¿¬°áÀ» °øÀ¯Çϰųª ¼·Î ´Ù¸¥ ¿¬°áÀ» »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ¸ðµÎ µ¿ÀÏÇÑ ÁÖÁ¦¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
- ¿µ±¸ °¡ÀÔÀÚ´Â È°¼º °¡ÀÔÀÚÀ̰ųª ºñÈ°¼º °¡ÀÔÀÚÀÏ ¼ö ÀÖ½À´Ï´Ù. ºê·ÎÄ¿´Â ºñÈ°¼º °¡ÀÔÀÚ¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¦ º¸°üÇÕ´Ï´Ù.
- °Ô½ÃÀÚ¿Í °¡ÀÔÀÚ¸¦ ·±Å¸ÀÓ¿¡ µ¿ÀûÀ¸·Î Ãß°¡ ¹× »èÁ¦ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÇÊ¿ä¿¡ µû¶ó ¸Þ½Ã¡ ½Ã½ºÅÛÀ» È®´ëÇϰųª Ãà¼ÒÇÒ ¼ö ÀÖ½À´Ï´Ù.
- ¸Þ½ÃÁö´Â º¸³½ ¼ø¼´ë·Î ÁÖÁ¦¿¡ °Ô½ÃµÇÁö¸¸ »ç¿ëµÇ´Â ¼ø¼´Â ¸Þ½ÃÁö ¸¸·áÀÏ, ¸Þ½ÃÁö ¿ì¼± ¼øÀ§, ¸Þ½ÃÁö¸¦ »ç¿ëÇÏ´Â µ¥ ¼±ÅñⰡ »ç¿ëµÇ´ÂÁö ¿©ºÎ µî°ú °°Àº ¿ä¼Ò¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
- °Ô½ÃÀÚ¿Í °¡ÀÔÀڴ ŸÀֿ̹¡ ±¸¾Ö¸¦ ¹Þ½À´Ï´Ù. Áï, ÁÖÁ¦ °¡ÀÔÀÚ´Â °¡ÀÔÇÑ ÀÌÈÄ¿¡ °Ô½ÃµÈ ¸Þ½ÃÁö¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
°Ô½Ã/°¡ÀÔ ¸ðµ¨ÀÇ °¡Àå Å« ÀÌÁ¡Àº ¸Þ½ÃÁö¸¦ °¡ÀÔÀÚ¿¡°Ô ºê·Îµåij½ºÆ®ÇÒ ¼ö ÀÖ´Ù´Â Á¡ÀÔ´Ï´Ù.
µµ¸ÞÀκ° API ¹× ÅëÇÕ API
JMS API´Â ÁöÁ¡°£ µµ¸ÞÀÎÀ̳ª °Ô½Ã/°¡ÀÔ µµ¸ÞÀÎÀ» ±¸ÇöÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀ̽º¿Í Ŭ·¡½º¸¦ Á¤ÀÇÇÕ´Ï´Ù. Ç¥ 2-1ÀÇ 2¿°ú 3¿¿¡´Â µµ¸ÞÀκ° API°¡ Ç¥½ÃµÇ¾î ÀÖ½À´Ï´Ù. JMS API´Â ÀÏ¹Ý ¸Þ½Ã¡ Ŭ¶óÀ̾ðÆ®¸¦ ÇÁ·Î±×·¡¹ÖÇÒ ¼ö ÀÖ´Â Ãß°¡ ÅëÇÕ µµ¸ÞÀÎÀ» Á¤ÀÇÇÕ´Ï´Ù. ÀÌ·± Ŭ¶óÀ̾ðÆ®ÀÇ µ¿ÀÛÀº ¸Þ½ÃÁö¸¦ »ý¼º ¹× »ç¿ëÇÏ´Â ´ë»óÀÇ À¯Çü¿¡ µû¶ó °áÁ¤µË´Ï´Ù. ¸Þ½Ã¡Àº ´ë»óÀÌ ´ë±â¿ÀÎ °æ¿ì¿¡´Â ÁöÁ¡°£ ÆÐÅÏ¿¡ µû¶ó µ¿ÀÛÇÏ°í, ´ë»óÀÌ ÁÖÁ¦ÀÎ °æ¿ì¿¡´Â °Ô½Ã/°¡ÀÔ ÆÐÅÏ¿¡ µû¶ó µ¿ÀÛÇÕ´Ï´Ù.
Ç¥ 2-1 JMS ÇÁ·Î±×·¡¹Ö µµ¸ÞÀÎ ¹× °´Ã¼
±âº» À¯Çü
(ÅëÇÕ µµ¸ÞÀÎ)ÁöÁ¡°£ µµ¸ÞÀÎ
°Ô½Ã/°¡ÀÔ µµ¸ÞÀÎ
Destination(Queue ¶Ç´Â Topic)1
Queue
Topic
ConnectionFactory
QueueConnectionFactory
TopicConnectionFactory
Connection
QueueConnection
TopicConnection
Session
QueueSession
TopicSession
MessageProducer
QueueSender
TopicPublisher
MessageConsumer
QueueReceiver
TopicSubscriber
1ÇÁ·Î±×·¡¹Ö ¹æ½Ä¿¡ µû¶ó ƯÁ¤ ´ë»ó À¯ÇüÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
ÅëÇÕ µµ¸ÞÀÎÀº JMS ¹öÀü 1.1¿¡¼ ¼Ò°³µÇ¾ú½À´Ï´Ù. 1.02b ÀÌÀü »ç¾çÀ» ÁؼöÇØ¾ß ÇÒ °æ¿ì µµ¸ÞÀκ° API¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, µµ¸ÞÀκ° API¸¦ »ç¿ëÇÏ¸é ´ë±â¿ ´ë»ó¿¡ ´ëÇÑ ¿µ±¸ °¡ÀÔÀÚ ÀÛ¼º µî°ú °°Àº ƯÁ¤ À¯ÇüÀÇ ÇÁ·Î±×·¡¹Ö ¿À·ù¸¦ ¹æÁöÇÏ´Â ±ú²ýÇÑ ÇÁ·Î±×·¡¹Ö ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ µµ¸ÞÀκ° API´Â µ¿ÀÏÇÑ Æ®·£Àè¼ÇÀ̳ª µ¿ÀÏÇÑ ¼¼¼Ç¿¡¼ ÁöÁ¡°£ ¹× °Ô½Ã/°¡ÀÔ ÀÛ¾÷À» °áÇÕÇÒ ¼ö ¾ø´Ù´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ °áÇÕÀÌ ÇÊ¿äÇÑ °æ¿ì ÅëÇÕ µµ¸ÞÀÎ API¸¦ ¼±ÅÃÇϽʽÿÀ. µÎ µµ¸ÞÀÎÀ» °áÇÕÇÏ´Â ¿¹Á¦´Â ¿äû-ÀÀ´ä ÆÐÅÏÀ» ÂüÁ¶ÇϽʽÿÀ.
ÇÁ·Î±×·¡¹Ö °´Ã¼¿¬°á ÆÑÅ丮, ¿¬°á, ¼¼¼Ç, »ý¼ºÀÚ, »ç¿ëÀÚ, ¸Þ½ÃÁö, ´ë»ó µî°ú °°ÀÌ JMS ¸Þ½Ã¡À» ±¸ÇöÇÏ´Â µ¥ »ç¿ëµÇ´Â °´Ã¼´Â ÇÁ·Î±×·¡¹Ö µµ¸ÞÀÎ Àüü¿¡¼ µ¿ÀÏÇÏ°Ô À¯ÁöµÇ¾î¾ß ÇÕ´Ï´Ù. ÀÌ·¯ÇÑ °´Ã¼´Â ±×¸² 2-5¸¦ ÂüÁ¶ÇϽʽÿÀ. ÀÌ ±×¸²¿¡¼´Â °´Ã¼°¡ ÆÄ»ýµÇ´Â ¹æ¹ýÀ» ¿¬°á ÆÑÅ丮 °´Ã¼¿¡¼ºÎÅÍ À§¿¡¼ ¾Æ·¡·Î º¸¿©ÁÝ´Ï´Ù.
°´Ã¼ ÀúÀå¼Ò¿¡´Â µÎ °´Ã¼(¿¬°á ÆÑÅ丮¿Í ´ë»ó)°¡ ÀÖ½À´Ï´Ù. ÀÌ´Â ÀÌ °´Ã¼µéÀÌ ÀϹÝÀûÀ¸·Î °ü¸® ´ë»ó °´Ã¼·Î »ý¼º, ±¸¼º ¹× °ü¸®µÊÀ» °Á¶ÇÕ´Ï´Ù. ÀÌ Àå¿¡¼´Â ¿¬°á ÆÑÅ丮¿Í ´ë»óÀÌ ÇÁ·Î±×·¡¹Ö ¹æ½ÄÀÌ ¾Æ´Ï¶ó °ü¸® ¸ñÀûÀ¸·Î »ý¼ºµÈ´Ù°í °¡Á¤ÇÕ´Ï´Ù.
±×¸² 2-5 JMS ÇÁ·Î±×·¡¹Ö °´Ã¼
Ç¥ 2-2¿¡¼´Â ¸Þ½ÃÁö¸¦ º¸³»°í ¹Þ´Â µ¥ ÇÊ¿äÇÑ ´Ü°è¸¦ ¿ä¾àÇÕ´Ï´Ù. ´Ü°è 1°ú ´Ü°è 3 ~ 6Àº ¹ß½ÅÀÚ¿Í ¼ö½ÅÀÚ¿¡ ´ëÇØ µ¿ÀÏÇÕ´Ï´Ù.
´ÙÀ½ Àý¿¡¼´Â ¿¬°á, ¼¼¼Ç, ¸Þ½ÃÁö, ´ë»ó µî°ú °°ÀÌ »ý¼ºÀÚ¿Í »ç¿ëÀÚ°¡ »ç¿ëÇÏ´Â °´Ã¼¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. ±×·± ´ÙÀ½ ¸Þ½ÃÁöÀÇ »ý¼º°ú »ç¿ëÀ» ¼³¸íÇÏ¿© JMS °´Ã¼¿¡ ´ëÇÑ ³»¿ëÀ» ¸¶Ä¡°Ú½À´Ï´Ù.
¿¬°á ÆÑÅ丮 ¹× ¿¬°á
Ŭ¶óÀ̾ðÆ®´Â ¿¬°á ÆÑÅ丮 °´Ã¼(ConnectionFactory)¸¦ »ç¿ëÇÏ¿© ¿¬°áÀ» ¸¸µì´Ï´Ù. ¿¬°á °´Ã¼(Connection)´Â Ŭ¶óÀ̾ðÆ®¿Í ºê·ÎÄ¿ °£ÀÇ È°¼º ¿¬°áÀ» ³ªÅ¸³À´Ï´Ù. ÀÌ ¿¬°á °´Ã¼´Â ±âº»ÀûÀ¸·Î ½ÃÀ۵ǰųª ÀÌ Å¬¶óÀ̾ðÆ®ÀÇ °ü¸®ÀÚ°¡ ¸í½ÃÀûÀ¸·Î ½ÃÀÛÇÏ´Â ±âº» ¿¬°á ¼ºñ½º¸¦ »ç¿ëÇÕ´Ï´Ù.
¿¬°áµÇ¸é Åë½Å ÀÚ¿ø ÇÒ´ç ¹× Å¬¶óÀ̾ðÆ® ÀÎÁõÀÌ ÀÌ·ç¾îÁý´Ï´Ù. ÀÌ´Â ºñ±³Àû Áß·®±Þ °´Ã¼ÀÌ¸ç ´ëºÎºÐÀÇ Å¬¶óÀ̾ðÆ®´Â ´ÜÀÏ ¿¬°áÀ» »ç¿ëÇÏ¿© ¸ðµç ¸Þ½Ã¡À» ¼öÇàÇÕ´Ï´Ù. ¿¬°á¿¡¼´Â µ¿½Ã »ç¿ëÀ» Áö¿øÇÕ´Ï´Ù. »ý¼ºÀÚ¿Í »ç¿ëÀÚ´Â ±× ¼öÀÇ Á¦ÇÑ ¾øÀÌ µ¿ÀÏÇÑ ¿¬°áÀ» °øÀ¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¿¬°á ÆÑÅ丮¸¦ ¸¸µé ¶§ ÇØ´ç µî·Ï Á¤º¸¸¦ ¼³Á¤ÇÏ¿© ¿¬°á ÆÑÅ丮¿¡¼ ÆÄ»ýµÇ´Â ¸ðµç ¿¬°áÀÇ µ¿ÀÛÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. Message QueueÀÇ °æ¿ì µî·Ï Á¤º¸¸¦ ÅëÇØ ´ÙÀ½°ú °°Àº Á¤º¸¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
- ºê·ÎÄ¿°¡ Àִ ȣ½ºÆ®ÀÇ À̸§, ¿øÇÏ´Â ¿¬°á ¼ºñ½º, Ŭ¶óÀ̾ðÆ®°¡ ÇØ´ç ¼ºñ½º¿¡ ¾×¼¼½ºÇÏ´Â µ¥ »ç¿ëÇÏ´Â Æ÷Æ®
- ¿¬°áÀÌ ½ÇÆÐÇÒ °æ¿ì ºê·ÎÄ¿¿¡ ÀÚµ¿À¸·Î À翬°áÇÏ´Â ¹æ¹ý. ÀÌ ±â´ÉÀº ¿¬°áÀÌ ²÷¾îÁø °æ¿ì¿¡ Ŭ¶óÀ̾ðÆ®¸¦ µ¿ÀÏÇÑ ºê·ÎÄ¿³ª ´Ù¸¥ ºê·ÎÄ¿¿¡ ´Ù½Ã ¿¬°áÇÕ´Ï´Ù. µ¥ÀÌÅÍ ÆäÀÏ¿À¹ö´Â º¸ÀåµÇÁö ¾Ê½À´Ï´Ù. ´Ù¸¥ ºê·ÎÄ¿¿¡ ´Ù½Ã ¿¬°áÇÒ ¶§ Áö¼Ó¼º ¸Þ½ÃÁö¿Í ±âŸ »óÅ Á¤º¸°¡ ¼Õ½ÇµÉ ¼ö ÀÖ½À´Ï´Ù.
- ºê·ÎÄ¿°¡ ¿µ±¸ °¡ÀÔÀ» ÃßÀûÇÏ´Â µ¥ ÇÊ¿äÇÑ Å¬¶óÀ̾ðÆ®ÀÇ ¾ÆÀ̵ð
- ¿¬°áÀ» ½ÃµµÇÏ´Â »ç¿ëÀÚÀÇ ±âº» À̸§ ¹× ºñ¹Ð¹øÈ£. ÀÌ Á¤º¸´Â ¿¬°á ½Ã ºñ¹Ð¹øÈ£¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀº °æ¿ì¿¡ »ç¿ëÀÚ¸¦ ÀÎÁõÇÏ°í ÀÛ¾÷ ±ÇÇÑÀ» ºÎ¿©ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù.
- ¾ÈÁ¤¼ºÀ» °í·ÁÇÏÁö ¾Ê´Â Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇØ ºê·ÎÄ¿ È®ÀÎÀ» ¾ïÁ¦ÇÒÁö ¿©ºÎ
- ºê·ÎÄ¿¿Í Ŭ¶óÀ̾ðÆ® ·±Å¸ÀÓ °£ÀÇ Á¦¾î ¹× ÆäÀÌ·Îµå ¸Þ½ÃÁöÀÇ È帧À» °ü¸®ÇÏ´Â ¹æ¹ý.
- ´ë±â¿ ã¾Æº¸±â ó¸® ¹æ¹ý(Java Ŭ¶óÀ̾ðÆ®¸¸ ÇØ´ç)
- ƯÁ¤ ¸Þ½ÃÁö Çì´õ Çʵ带 ´ëüÇÒÁö ¿©ºÎ
Ŭ¶óÀ̾ðÆ® ÀÀ¿ë ÇÁ·Î±×·¥À» ½ÃÀÛÇÒ ¶§ »ç¿ëÇÏ´Â ¸í·ÉÁÙ¿¡¼ ¿¬°á ÆÑÅ丮 µî·Ï Á¤º¸¸¦ ´ëüÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇØ´ç ¿¬°á¿¡ ´ëÇÑ µî·Ï Á¤º¸¸¦ ¼³Á¤ÇÏ¿© ÁÖ¾îÁø ¿¬°á¿¡ ´ëÇÑ µî·Ï Á¤º¸¸¦ ´ëüÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
¿¬°á °´Ã¼¸¦ »ç¿ëÇÏ¿© ¼¼¼Ç °´Ã¼¸¦ ¸¸µé°Å³ª, ¿¹¿Ü ¼ö½Å±â¸¦ ¼³Á¤Çϰųª, JMS ¹öÀü ¹× °ø±ÞÀÚ Á¤º¸¸¦ °¡Á®¿Ã ¼ö ÀÖ½À´Ï´Ù.
¼¼¼Ç
¿¬°áÀÌ Å¬¶óÀ̾ðÆ®¿Í ºê·ÎÄ¿ °£ÀÇ Åë½Å ä³ÎÀ» ³ªÅ¸³»´Â °æ¿ì ¼¼¼Ç¿¡ Ŭ¶óÀ̾ðÆ®¿Í ºê·ÎÄ¿ °£ÀÇ ´ÜÀÏ ´ëÈ°¡ Ç¥½ÃµË´Ï´Ù. ÀϹÝÀûÀ¸·Î ¼¼¼Ç °´Ã¼¸¦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö, ¸Þ½ÃÁö »ý¼ºÀÚ ¹× ¸Þ½ÃÁö »ç¿ëÀÚ¸¦ ¸¸µì´Ï´Ù. ¼¼¼ÇÀ» ¸¸µé °æ¿ì ¸¹Àº È®ÀÎ ¿É¼Ç ¶Ç´Â Æ®·£Àè¼ÇÀ» ÅëÇØ ¾ÈÁ¤ÀûÀÎ Àü´ÞÀ» ±¸¼ºÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ¾ÈÁ¤ÀûÀÎ ¸Þ½Ã¡À» ÂüÁ¶ÇϽʽÿÀ.
JMS »ç¾ç¿¡ µû¸£¸é ¼¼¼ÇÀº ¸Þ½ÃÁö »ý¼º ¹× »ç¿ëÀ» À§ÇÑ ´ÜÀÏ ½º·¹µå ÄÁÅؽºÆ®ÀÔ´Ï´Ù. ´ÜÀÏ ¼¼¼Ç¿¡ ´ëÇØ ¿©·¯ ¸Þ½ÃÁö »ý¼ºÀÚ¿Í »ç¿ëÀÚ¸¦ ¸¸µé ¼ö ÀÖÁö¸¸, ÇØ´ç »ý¼ºÀÚ¿Í »ç¿ëÀÚ¸¦ ¼øÂ÷ÀûÀ¸·Î »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ½º·¹µù ±¸ÇöÀº Java Ŭ¶óÀ̾ðÆ®¿Í C Ŭ¶óÀ̾ðÆ® °£¿¡ ¾à°£ ´Ù¸¨´Ï´Ù. ½º·¹µù ±¸Çö ¹× Á¦ÇÑ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ÇØ´ç °³¹ß ¾È³»¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
¼¼¼Ç °´Ã¼¸¦ »ç¿ëÇÏ¿© ´ÙÀ½À» ¼öÇàÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
- °ü¸® ´ë»ó °´Ã¼¸¦ »ç¿ëÇÏ¿© ´ë»óÀ» Á¤ÀÇÇÏÁö ¾Ê´Â Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇÑ ´ë»ó ¸¸µé±â ¹× ±¸¼º
- Àӽà ÁÖÁ¦¿Í ´ë±â¿ ¸¸µé±â ¹× ±¸¼º. Àӽà ÁÖÁ¦¿Í ´ë±â¿Àº ¿äû-ÀÀ´ä ÆÐÅÏÀÇ ÀϺηΠ»ç¿ëµË´Ï´Ù. ¿äû-ÀÀ´ä ÆÐÅÏÀ» ÂüÁ¶ÇϽʽÿÀ.
- Æ®·£Àè¼Ç ó¸® Áö¿ø
- ¸Þ½ÃÁö »ý¼º ¶Ç´Â »ç¿ëÀ» À§ÇÑ ÀÏ·Ã ¼ø¼ Á¤ÀÇ
- ºñµ¿±â½Ä »ç¿ëÀÚ¿¡ ´ëÇÑ ¸Þ½ÃÁö ¼ö½Å±â ½ÇÇà ÀÏ·ÃÈ
- ´ë±â¿ ºê¶ó¿ìÀú ¸¸µé±â(Java Ŭ¶óÀ̾ðÆ®¸¸ ÇØ´ç)
¸Þ½ÃÁö
¸Þ½ÃÁö´Â Çì´õ, µî·Ï Á¤º¸ ¹× º»¹®À¸·Î ±¸¼ºµË´Ï´Ù. ÀÌ ±¸Á¶¸¦ ÀÌÇØÇØ¾ß ¸Þ½ÃÁö¸¦ ÀûÀýÇÏ°Ô ÀÛ¼ºÇÏ°í ƯÁ¤ ¸Þ½Ã¡ µ¿ÀÛÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸Þ½ÃÁö Çì´õ
Çì´õ´Â ¸ðµç JMS ¸Þ½ÃÁö¿¡¼ ÇʼöÀÔ´Ï´Ù. Çì´õ¿¡´Â 10°³ÀÇ »çÀü Á¤ÀÇµÈ Çʵ尡 Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ Çʵ忡 ´ëÇÑ ¸ñ·Ï°ú ¼³¸íÀº Ç¥ 2-3À» ÂüÁ¶ÇϽʽÿÀ.
ÀÌ Ç¥¿¡¼ ¾Ë ¼ö ÀÖµíÀÌ ¸Þ½ÃÁö Çì´õ Çʵå´Â ¸Þ½ÃÁö ½Äº°, ¸Þ½ÃÁö ¶ó¿ìÆà ±¸¼º, ¸Þ½ÃÁö ó¸® Á¤º¸ Á¦°ø µî°ú °°Àº ´Ù¾çÇÑ ¸ñÀûÀ¸·Î »ç¿ëµË´Ï´Ù.
°¡Àå Áß¿äÇÑ Çʵå Áß ÇϳªÀÎ JMSDeliveryMode´Â ¸Þ½ÃÁö Àü´ÞÀÇ ¾ÈÁ¤¼ºÀ» °áÁ¤ÇÕ´Ï´Ù. ÀÌ Çʵå´Â ¸Þ½ÃÁö°¡ Áö¼Ó¼º ¸Þ½ÃÁöÀÎÁö ¿©ºÎ¸¦ ³ªÅ¸³À´Ï´Ù.
¸Þ½ÃÁö Çì´õ Çʵå´Â °ø±ÞÀÚ(ºê·ÎÄ¿ ¶Ç´Â Ŭ¶óÀ̾ðÆ® ·±Å¸ÀÓ) ¶Ç´Â Ŭ¶óÀ̾ðÆ®¿¡ ÀÇÇØ ¼³Á¤µË´Ï´Ù. ¸Þ½ÃÁö »ý¼ºÀڴ ƯÁ¤ ¸Þ½Ã¡ µ¿ÀÛÀ» °¡Á®¿Ã Çì´õ °ªÀ» ±¸¼ºÇØ¾ß ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸Þ½ÃÁö »ç¿ëÀÚ´Â Çì´õ °ªÀ» ÀÐ°í ¸Þ½ÃÁö °æ·Î°¡ ÁöÁ¤µÈ ¹æ¹ý°ú ÇâÈÄÀÇ ¸Þ½ÃÁö 󸮿¡ ÇÊ¿äÇÑ ³»¿ëÀ» ÀÌÇØÇØ¾ß ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Çì´õ Çʵå(JMSDeliveryMode, JMSExpiration, JMSPriority)´Â ´ÙÀ½°ú °°Àº ¼¼ °¡Áö ¼öÁØÀ¸·Î ¼³Á¤µÉ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ·¯ÇÑ Çʵ尡 ¿©·¯ ¼öÁØÀ¸·Î ¼³Á¤µÇ´Â °æ¿ì ¿¬°á ÆÑÅ丮¿¡ ¼³Á¤µÈ °ªÀÌ °³º° ¸Þ½ÃÁö¿¡ ¼³Á¤µÈ °ªÀ» ´ëüÇϸç, ÁÖ¾îÁø ¸Þ½ÃÁö¿¡ ¼³Á¤µÈ °ªÀÌ ¸Þ½ÃÁö »ý¼ºÀÚ¿¡ ¼³Á¤µÈ °ªÀ» ´ëüÇÕ´Ï´Ù.
¸Þ½ÃÁö Çì´õ ÇʵåÀÇ À̸§Àº ¾ð¾î ±¸Çö¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº Java Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼ ¶Ç´Â C Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
¸Þ½ÃÁö µî·Ï Á¤º¸
¸Þ½ÃÁö´Â µî·Ï Á¤º¸ À̸§°ú µî·Ï Á¤º¸ °ª ½ÖÀ¸·Î ÁöÁ¤µÇ´Â µî·Ï Á¤º¸¶ó´Â ¼±ÅÃÀû Çì´õ Çʵ带 Æ÷ÇÔÇÒ ¼öµµ ÀÖ½À´Ï´Ù. Ŭ¶óÀ̾ðÆ®¿Í °ø±ÞÀÚ´Â ÀÌ µî·Ï Á¤º¸¸¦ ÅëÇØ ¸Þ½ÃÁö Çì´õ¸¦ È®ÀåÇÒ ¼ö ÀÖÀ¸¸ç, µî·Ï Á¤º¸¿¡´Â Ŭ¶óÀ̾ðÆ®³ª °ø±ÞÀÚ°¡ ¸Þ½ÃÁö¸¦ ½Äº°ÇÏ¿© ó¸®ÇÏ´Â µ¥ À¯¿ëÇÑ Á¤º¸°¡ µé¾î ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ¼ö½Å Ŭ¶óÀ̾ðÆ®´Â ¸Þ½ÃÁö µî·Ï Á¤º¸¸¦ »ç¿ëÇÏ¿© ÁöÁ¤µÈ ±âÁØ¿¡ ¸Â´Â ¸Þ½ÃÁö¸¸ Àü´ÞÇϵµ·Ï ¿äûÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, »ç¿ëÀÚ Å¬¶óÀ̾ðÆ®´Â ´ºÀúÁö¿¡ ÀÖ´Â ½Ã°£Á¦ Á÷¿ø¿¡ ´ëÇÑ ±Þ¿© ¸Þ½ÃÁö¿¡ ´ëÇؼ¸¸ °ü½É ºÐ¾ß¸¦ Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. °ø±ÞÀÚ´Â ÁöÁ¤µÈ ±âÁØ¿¡ ¸ÂÁö ¾Ê´Â ¸Þ½ÃÁö¸¦ Àü´ÞÇÏÁö ¾Ê½À´Ï´Ù.
JMS »ç¾ç¿¡¼´Â ¾ÆÈ© °¡Áö Ç¥ÁØ µî·Ï Á¤º¸¸¦ Á¤ÀÇÇÕ´Ï´Ù. ÀÌ·¯ÇÑ µî·Ï Á¤º¸´Â Ŭ¶óÀ̾ðÆ®¿Í °ø±ÞÀÚ°¡ ¼³Á¤ÇÕ´Ï´Ù. µî·Ï Á¤º¸ÀÇ À̸§Àº ¿¹¾àµÈ ¹®ÀÚ "JMSX"·Î ½ÃÀ۵˴ϴÙ. Ŭ¶óÀ̾ðÆ®³ª °ø±ÞÀÚ´Â ÀÌ·¯ÇÑ µî·Ï Á¤º¸¸¦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ º¸³½ »ç¶÷, ¸Þ½ÃÁö »óÅÂ, ¸Þ½ÃÁö Àü´Þ ºóµµ, ¸Þ½ÃÁö°¡ Àü´ÞµÈ ½Ã°£ µîÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ µî·Ï Á¤º¸¸¦ ÅëÇØ °ø±ÞÀÚ´Â ¸Þ½ÃÁö °æ·Î¸¦ ÁöÁ¤ÇÏ°í Áø´Ü Á¤º¸¸¦ Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù.
Message Queue¿¡¼´Â ¸Þ½ÃÁö µî·Ï Á¤º¸µµ Á¤ÀÇÇÕ´Ï´Ù. ¸Þ½ÃÁö µî·Ï Á¤º¸´Â ¸Þ½ÃÁö¸¦ Àü´ÞÇÒ ¼ö ¾øÀ» °æ¿ìÀÇ ¸Þ½ÃÁö ó¸® ¹æ¹ý°ú ¾ÐÃàµÈ ¸Þ½ÃÁö¸¦ ½Äº°ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº Java Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
¸Þ½ÃÁö º»¹®
¸Þ½ÃÁö º»¹®¿¡´Â Ŭ¶óÀ̾ðÆ®°¡ ±³È¯ÇÏ°íÀÚ ÇÏ´Â µ¥ÀÌÅÍ°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.
Ç¥ 2-4¿¡ ÁöÁ¤µÈ °Íó·³ JMS ¸Þ½ÃÁöÀÇ À¯Çü¿¡ µû¶ó º»¹®¿¡ Æ÷ÇԵǴ ³»¿ë°ú »ç¿ëÀÚ°¡ º»¹®À» ó¸®ÇÏ´Â ¹æ¹ýÀÌ °áÁ¤µË´Ï´Ù. ¼¼¼Ç °´Ã¼¿¡´Â °¢ ¸Þ½ÃÁö º»¹® À¯Çü¿¡ ´ëÇÑ »ý¼º ¸Þ¼Òµå°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.
Java Ŭ¶óÀ̾ðÆ®´Â Ŭ¶óÀ̾ðÆ® ·±Å¸ÀÓ¿¡¼ Àü¼Û ÁßÀÎ ¸Þ½ÃÁöÀÇ º»¹®À» ¾ÐÃàÇϵµ·Ï µî·Ï Á¤º¸¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚÃøÀÇ Message Queue ·±Å¸ÀÓ¿¡¼ ¸Þ½ÃÁö¸¦ Àü´ÞÇϱâ Àü¿¡ ¾ÐÃàÀ» ÇØÁ¦ÇÕ´Ï´Ù.
¸Þ½ÃÁö »ý¼º¸Þ½ÃÁö »ý¼ºÀÚ´Â ¿¬°á ¹× ¼¼¼Ç ÄÁÅؽºÆ® ³»¿¡¼ ¸Þ½ÃÁö¸¦ Àü¼ÛÇϰųª °Ô½ÃÇÕ´Ï´Ù. ¸Þ½ÃÁö »ý¼ºÀº ¸Å¿ì °£´ÜÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ®´Â ¸Þ½ÃÁö »ý¼ºÀÚ °´Ã¼(MessageProducer)¸¦ »ç¿ëÇÏ¿© API¿¡¼ ´ë»ó °´Ã¼·Î Ç¥½ÃµÇ´Â ¹°¸®Àû ´ë»óÀ¸·Î ¸Þ½ÃÁö¸¦ º¸³À´Ï´Ù.
»ý¼ºÀÚ¸¦ ¸¸µé ¶§ ¸ðµç »ý¼ºÀÚÀÇ ¸Þ½ÃÁö°¡ Àü¼ÛµÇ´Â ±âº» ´ë»óÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Áö¼Ó¼º, ¿ì¼± ¼øÀ§, ¼ö¸í µîÀ» Á¦¾îÇÏ´Â ¸Þ½ÃÁö Çì´õ Çʵ忡 ´ëÇÑ ±âº»°ªÀ» ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ±×·¯¸é ÀÌ ±âº»°ªÀº ¸Þ½ÃÁö¸¦ º¸³¾ ¶§ ´ëü ´ë»óÀ» ÁöÁ¤Çϰųª ÁöÁ¤µÈ ¸Þ½ÃÁöÀÇ Çì´õ Çʵ忡 ´ëÇÑ ´ëü °ªÀ» ¼³Á¤ÇÏ¿© ±âº»°ªÀ» ´ëüÇÏÁö ¾Ê´Â ÇÑ ÇØ´ç »ý¼ºÀÚ°¡ ¸¸µç ¸ðµç ¸Þ½ÃÁö¿¡¼ »ç¿ëµË´Ï´Ù.
¸Þ½ÃÁö »ý¼ºÀÚ´Â JMSReplyTo ¸Þ½ÃÁö Çì´õ Çʵ带 ¼³Á¤ÇÏ¿© ¿äû-ÀÀ´ä ÆÐÅÏÀ» ±¸ÇöÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ¿äû-ÀÀ´ä ÆÐÅÏÀ» ÂüÁ¶ÇϽʽÿÀ.
¸Þ½ÃÁö »ç¿ë¸Þ½ÃÁö »ç¿ëÀÚ´Â ¿¬°á ¹× ¼¼¼Ç ÄÁÅؽºÆ® ³»¿¡¼ ¸Þ½ÃÁö¸¦ ¹Þ½À´Ï´Ù. Ŭ¶óÀ̾ðÆ®´Â ¸Þ½ÃÁö »ç¿ëÀÚ °´Ã¼(MessageConsumer)¸¦ »ç¿ëÇÏ¿© API¿¡¼ ´ë»ó °´Ã¼·Î Ç¥½ÃµÇ´Â ÁöÁ¤µÈ ¹°¸®Àû ´ë»óÀ¸·ÎºÎÅÍ ¸Þ½ÃÁö¸¦ ¹Þ½À´Ï´Ù.
´ÙÀ½ ¼¼ °¡Áö ¿ä¼Ò´Â ºê·ÎÄ¿°¡ »ç¿ëÀÚ¿¡°Ô ¸Þ½ÃÁö¸¦ Àü´ÞÇÏ´Â ¹æ¹ý¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.
¸Þ½ÃÁö Àü´Þ ¹× Ŭ¶óÀ̾ðÆ® ¼³°è¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â ´Ù¸¥ ÁÖ¿ä ¿ä¼Ò·Î´Â »ç¿ëÀÚ¿¡°Ô ÇÊ¿äÇÑ ¾ÈÁ¤¼º ¼öÁØÀÌ ÀÖ½À´Ï´Ù. ¾ÈÁ¤ÀûÀÎ ¸Þ½Ã¡À» ÂüÁ¶ÇϽʽÿÀ.
µ¿±â½Ä ¹× ºñµ¿±â½Ä »ç¿ëÀÚ
¸Þ½ÃÁö »ç¿ëÀÚ´Â µ¿±â½Ä ¶Ç´Â ºñµ¿±â½Ä ¸Þ½ÃÁö »ç¿ëÀ» Áö¿øÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸Þ½ÃÁö¸¦ ¿äûÇÏ´Â µ¥ »ç¿ëµÇ´Â ¸Þ¼Òµå¿¡ µû¶ó µ¿±â½Ä »ç¿ëÀÚ´Â ¸Þ½ÃÁö°¡ µµÂøÇÒ ¶§±îÁö ¹«ÇÑÈ÷ ´ë±âÇϰųª, ÁöÁ¤µÈ ½Ã°£ µ¿¾È ¸Þ½ÃÁö¸¦ ´ë±âÇϰųª, »ç¿ëÇÒ Áغñ°¡ µÈ ¸Þ½ÃÁö°¡ ¾ø´Â °æ¿ì Áï½Ã µ¹¾Æ°¡µµ·Ï ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. "»ç¿ëµÊ"Àº ÇØ´ç °´Ã¼¸¦ Ŭ¶óÀ̾ðÆ®¿¡¼ Áï½Ã »ç¿ëÇÒ ¼ö ÀÖÀ½À» ÀǹÌÇÕ´Ï´Ù. ¼º°øÀûÀ¸·Î Àü¼ÛµÇ¾úÁö¸¸ ºê·ÎÄ¿°¡ 󸮸¦ ¸¶Ä¡Áö ¾ÊÀº ¸Þ½ÃÁö´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
¼±Åñ⸦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö ÇÊÅ͸µ
¸Þ½ÃÁö »ç¿ëÀÚ´Â ¸Þ½ÃÁö ¼±Åñ⸦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö ¼ºñ½º°¡ ƯÁ¤ ¼±Åà ±âÁØ°ú ÀÏÄ¡ÇÏ´Â µî·Ï Á¤º¸¸¦ °®´Â ¸Þ½ÃÁö¸¸ Àü´ÞÇϵµ·Ï ÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ¸¦ ¸¸µé ¶§ ÀÌ ±âÁØÀ» ÁöÁ¤ÇÕ´Ï´Ù.
¼±Åñâ´Â SQL-like ±¸¹®À» »ç¿ëÇÏ¿© ¸Þ½ÃÁö µî·Ï Á¤º¸¿¡ ´ëÇØ ÀÏÄ¡½Ãŵ´Ï´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.
color = "red"
size > 10
Java Ŭ¶óÀ̾ðÆ®´Â ´ë±â¿À» ã¾Æº¼ ¶§ ¼±Åñ⸦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ±×·¯¸é »ç¿ëÇϱâ À§ÇØ ´ë±â ÁßÀÎ ¼±ÅÃµÈ ¸Þ½ÃÁö¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
¿µ±¸ °¡ÀÔÀÚ »ç¿ë
¼¼¼Ç °´Ã¼¸¦ »ç¿ëÇÏ¿© ÁÖÁ¦¿¡ ´ëÇÑ ¿µ±¸ °¡ÀÔÀÚ¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ºê·ÎÄ¿´Â °¡ÀÔÀÚ°¡ ºñÈ°¼ºÈµÈ °æ¿ì¿¡µµ ÀÌ·¯ÇÑ Á¾·ùÀÇ °¡ÀÔÀÚ¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¦ º¸°üÇÕ´Ï´Ù.
ºê·ÎÄ¿´Â °¡ÀÔÀÚÀÇ »óŸ¦ À¯ÁöÇÏ¿´´Ù°¡ °¡ÀÔÀÚ°¡ ´Ù½Ã È°¼ºÈµÇ¸é ¸Þ½ÃÁö¸¦ ´Ù½Ã Àü´ÞÇØ¾ß ÇϹǷÎ, ÁöÁ¤µÈ °¡ÀÔÀÚ°¡ µé¾î¿À°í ³ª°¡´Â °ÍÀ» ½Äº°ÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù. °¡ÀÔÀÚÀÇ ¾ÆÀ̵ð´Â °¡ÀÔÀÚ¸¦ ¸¸µç ¿¬°áÀÇ ClientID µî·Ï Á¤º¸¿Í °¡ÀÔÀÚ¸¦ ¸¸µé ¶§ ÁöÁ¤ÇÑ °¡ÀÔÀÚ À̸§À¸·ÎºÎÅÍ ±¸¼ºµË´Ï´Ù.
¿äû-ÀÀ´ä ÆÐÅϵ¿ÀÏÇÑ ¿¬°á ¶Ç´Â ¼¼¼Ç(ÅëÇÕ API¸¦ »ç¿ëÇÏ´Â °æ¿ì)¿¡¼ »ý¼ºÀÚ¿Í »ç¿ëÀÚ¸¦ °áÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, JMS API¸¦ ÅëÇØ Àӽà ´ë»óÀ» »ç¿ëÇÏ¿© ¸Þ½Ã¡ ÀÛ¾÷¿¡ ´ëÇÑ ¿äû-ÀÀ´ä ÆÐÅÏÀ» ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸Þ½ÃÁö »ý¼ºÀÚ´Â ´ÙÀ½À» ¼öÇàÇÏ¿© ¿äû-ÀÀ´ä ÆÐÅÏÀ» ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù.
¸Þ½ÃÁö »ç¿ëÀÚ°¡ ¸Þ½ÃÁö¸¦ ó¸®ÇÒ ¶§ ¸Þ½ÃÁöÀÇ JMSReplyTo Çʵ带 °Ë»çÇÏ¿© ÀÀ´äÀÌ ÇÊ¿äÇÑÁö¸¦ °áÁ¤ÇÏ°í ÁöÁ¤µÈ ´ë»ó¿¡°Ô ÀÀ´äÀ» º¸³À´Ï´Ù.
¿äû-ÀÀ´ä ¸ÞÄ¿´ÏÁòÀº »ý¼ºÀÚ¿¡°Ô ÀÀ´ä ´ë»ó¿¡ ´ëÇÑ °ü¸® ´ë»ó °´Ã¼ ¼³Á¤ ¹®Á¦¸¦ ÁÙ¿©ÁÖ°í »ç¿ëÀÚ°¡ ¿äû¿¡ ½±°Ô ÀÀ´äÇÒ ¼ö ÀÖ°Ô ÇØÁÝ´Ï´Ù. ÀÌ ÆÐÅÏÀº »ý¼ºÀÚ°¡ °è¼ÓÇϱâ Àü¿¡ ¿äûÀÌ Ã³¸®µÇ¾ú´ÂÁö È®ÀÎÇØ¾ß ÇÏ´Â °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù.
±×¸² 2-6¿¡¼´Â ÁÖÁ¦¿¡ ¸Þ½ÃÁö¸¦ º¸³»°í Àӽà ´ë±â¿¿¡¼ ÀÀ´äÀ» ¹Þ´Â ¿äû/ÀÀ´ä ÆÐÅÏ¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
±×¸² 2-6 ¿äû/ÀÀ´ä ÆÐÅÏ
±×¸²¿¡ Ç¥½ÃµÈ °Íó·³ MyTopicPublisher´Â Msg1À» ´ë»ó MyTopic¿¡ »ý¼ºÇÕ´Ï´Ù. MyTopicSubsriber1°ú MyTopicSubscriber2´Â ¸Þ½ÃÁö¸¦ ¹Þ°í MyTempQueue¿¡ ÀÀ´äÀ» º¸³À´Ï´Ù. MyTQReceiver´Â ÀÌ ´ë±â¿¿¡¼ ÀÀ´äÀ» °Ë»öÇÕ´Ï´Ù. ÀÌ ÆÐÅÏÀº ´Ù¼öÀÇ Å¬¶óÀ̾ðÆ®¿¡ °¡°Ý Á¤º¸¸¦ °Ô½ÃÇÏ°í ¼øÂ÷Àû 󸮸¦ À§ÇØ (ÀÀ´ä) ÁÖ¹®À» ´ë±â¿¿¡ ³Ö´Â ÀÀ¿ë ÇÁ·Î±×·¥¿¡ À¯¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Àӽà ´ë»óÀº ¸¸µé¾îÁø ¿¬°á ±â°£ µ¿¾È¸¸ Áö¼ÓµË´Ï´Ù. »ý¼ºÀÚ´Â Àӽà ´ë»ó¿¡ º¸³¾ ¼ö ÀÖÁö¸¸, Àӽà ´ë»ó¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â »ç¿ëÀÚ¸¸ ´ë»óÀ» ¸¸µç ¿¬°á¿¡ »ý¼ºµË´Ï´Ù.
¿äû/ÀÀ´ä ÆÐÅÏÀº Àӽà ´ë»ó ¸¸µé±â¿¡ µû¶ó ´Ù¸£¹Ç·Î ´ÙÀ½°ú °°Àº °æ¿ì¿¡´Â ÀÌ ÆÐÅÏÀ» »ç¿ëÇÏÁö ¾Ê¾Æ¾ß ÇÕ´Ï´Ù.
¾ÈÁ¤ÀûÀÎ ¸Þ½Ã¡¸Þ½ÃÁö Àü´ÞÀº µÎ °³ÀÇ È©¿¡¼ ¹ß»ýÇÕ´Ï´Ù. ù ¹ø° È©Àº »ý¼ºÀÚÀÇ ¸Þ½ÃÁö¸¦ ºê·ÎÄ¿ÀÇ ¹°¸®Àû ´ë»óÀ¸·Î °¡Á®¿À°í, µÎ ¹ø° È©Àº ¹°¸®Àû ´ë»óÀÇ ¸Þ½ÃÁö¸¦ »ç¿ëÀÚ¿¡°Ô °¡Á®¿É´Ï´Ù. µû¶ó¼, ºê·ÎÄ¿·Î À̵¿ÇÏ´Â È©, ºê·ÎÄ¿°¡ ½ÇÆÐÇÒ ¶§ ºê·ÎÄ¿ ¸Þ¸ð¸®¿¡ ÀÖ´Â È©, ºê·ÎÄ¿¿¡¼ »ç¿ëÀÚ·Î À̵¿ÇÏ´Â È© Áß Çϳª¿¡ ÇØ´çÇÒ °æ¿ì ¸Þ½ÃÁö°¡ ¼Õ½ÇµÉ ¼ö ÀÖ½À´Ï´Ù. ¾ÈÁ¤ÀûÀÎ Àü´Þ¿¡¼´Â ÀÌ·¯ÇÑ °æ¿ì¿¡µµ Àü´ÞÀ» ½ÇÆÐÇÏÁö ¾Ê½À´Ï´Ù. ºñÁö¼Ó¼º ¸Þ½ÃÁö´Â ºê·ÎÄ¿°¡ ½ÇÆÐÇÒ °æ¿ì Ç×»ó ¼Õ½ÇµÉ ¼ö ÀÖÀ¸¹Ç·Î ¾ÈÁ¤ÀûÀÎ Àü´ÞÀº Áö¼Ó¼º ¸Þ½ÃÁö¿¡¸¸ Àû¿ëµË´Ï´Ù.
´ÙÀ½ µÎ ¸ÞÄ¿´ÏÁòÀ» »ç¿ëÇÏ¿© ¾ÈÁ¤ÀûÀÎ Àü´ÞÀ» È®½ÇÈ÷ ÇÕ´Ï´Ù.
´ÙÀ½ Àý¿¡¼´Â ¾ÈÁ¤¼ºÀ» º¸ÀåÇÏ´Â ÀÌ·¯ÇÑ µÎ °¡Áö Ãø¸é¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
È®ÀÎ
È®ÀÎÀº Ŭ¶óÀ̾ðÆ®¿Í ¸Þ½ÃÁö ¼ºñ½º °£¿¡ ¾ÈÁ¤ÀûÀÎ ¸Þ½ÃÁö Àü´ÞÀ» È®ÀÎÇϱâ À§ÇØ º¸³»´Â ¸Þ½ÃÁöÀÔ´Ï´Ù. È®ÀÎÀº »ý¼ºÀÚ¿Í »ç¿ëÀÚ¿¡ ´ëÇØ ¼·Î ´Ù¸£°Ô »ç¿ëµË´Ï´Ù.
¸Þ½ÃÁö »ý¼º ½Ã, ºê·ÎÄ¿´Â ¸Þ½ÃÁö¸¦ ¹Þ¾Æ¼ ´ë»ó¿¡ ³Ö°í ¿µ±¸ÀûÀ¸·Î ÀúÀåÇßÀ½À» È®ÀÎÇÕ´Ï´Ù. »ý¼ºÀÚÀÇ send() ¸Þ¼Òµå´Â ÀÌ È®ÀÎÀ» ¹ÞÀ» ¶§±îÁö Â÷´ÜµË´Ï´Ù. ÀÌ·¯ÇÑ È®ÀÎÀº Áö¼Ó¼º ¸Þ½ÃÁö¸¦ º¸³¾ ¶§ Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇØ Åõ¸íÇÕ´Ï´Ù.
¸Þ½ÃÁö »ç¿ë ½Ã, Ŭ¶óÀ̾ðÆ®°¡ ´ë»óÀ¸·ÎºÎÅÍÀÇ ¸Þ½ÃÁö Àü´ÞÀ» ¼ö½ÅÇÏ°í ¸Þ½ÃÁö¸¦ »ç¿ëÇßÀ½À» È®ÀÎÇÑ ´ÙÀ½ ºê·ÎÄ¿°¡ ÇØ´ç ´ë»ó¿¡¼ ¸Þ½ÃÁö¸¦ »èÁ¦ÇÕ´Ï´Ù. JMS´Â ´Ù¾çÇÑ ¾ÈÁ¤¼º Á¤µµ¸¦ ³ªÅ¸³»´Â ´Ù¾çÇÑ È®ÀÎ ¸ðµå¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
- AUTO_ACKNOWLEDGE ¸ðµå¿¡¼ ¼¼¼ÇÀº Ŭ¶óÀ̾ðÆ®¿¡¼ »ç¿ëÇÏ´Â °¢ ¸Þ½ÃÁö¸¦ ÀÚµ¿À¸·Î È®ÀÎÇÕ´Ï´Ù. ¶ÇÇÑ ºê·ÎÄ¿°¡ »ç¿ëµÈ °¢ ¸Þ½ÃÁö¿¡ ´ëÇØ Å¬¶óÀ̾ðÆ® È®ÀÎÀ» ó¸®ÇßÀ½À» È®ÀÎÇÒ ¶§±îÁö ¼¼¼Ç ½º·¹µå´Â Â÷´ÜµË´Ï´Ù.
- CLIENT_ACKNOWLEDGE ¸ðµå¿¡¼ Ŭ¶óÀ̾ðÆ®´Â ¸Þ½ÃÁö °´Ã¼ÀÇ acknowledge() ¸Þ¼Òµå¸¦ È£ÃâÇÏ¿© Çϳª ÀÌ»óÀÇ ¸Þ½ÃÁö¸¦ »ç¿ëÇÑ ÈÄ ¸í½ÃÀûÀ¸·Î È®ÀÎÇÕ´Ï´Ù. ÀÌ°ÍÀº ¼¼¼ÇÀÌ ¸Þ¼ÒµåÀÇ ÀÌÀü È£Ãâ ÀÌÈÄ¿¡ ¼¼¼Ç¿¡ »ç¿ëµÈ ¸ðµç ¸Þ½ÃÁö¸¦ È®ÀÎÇϱ⠶§¹®ÀÔ´Ï´Ù. ¶ÇÇÑ ºê·ÎÄ¿°¡ Ŭ¶óÀ̾ðÆ® È®ÀÎÀ» ó¸®ÇßÀ½À» È®ÀÎÇÒ ¶§±îÁö ¼¼¼Ç ½º·¹µå´Â Â÷´ÜµË´Ï´Ù.
¾ÈÁ¤¼ºº¸´Ù´Â ¼º´ÉÀ» ´õ °í·ÁÇϴ Ŭ¶óÀ̾ðÆ®¸¦ À§ÇØ Message Queue ¼ºñ½º´Â NO_ACKNOWLEDGE ¸ðµå¸¦ Á¦°øÇÏ¿© JMS API¸¦ È®ÀåÇÕ´Ï´Ù. ÀÌ ¸ðµå¿¡¼´Â ºê·ÎÄ¿°¡ Ŭ¶óÀ̾ðÆ® È®ÀÎÀ» ÃßÀûÇÏÁö ¾Ê±â ¶§¹®¿¡ »ç¿ëÀÚ Å¬¶óÀ̾ðÆ®¿¡¼ ¸Þ½ÃÁö¸¦ ¼º°øÀûÀ¸·Î ó¸®Çß´ÂÁö È®ÀÎÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ ¸ðµå¸¦ ¼±ÅÃÇÏ¸é ºñ¿µ±¸ °¡ÀÔÀÚ¿¡°Ô º¸³»´Â ºñÁö¼Ó¼º ¸Þ½ÃÁö¿¡ ´ëÇÑ ¼º´ÉÀÌ Çâ»óµÉ ¼ö ÀÖ½À´Ï´Ù.
Æ®·£Àè¼Ç
Æ®·£Àè¼ÇÀº Çϳª ÀÌ»óÀÇ ¸Þ½ÃÁö »ý¼º ¹×/¶Ç´Â »ç¿ëÀ» ±âº» ´ÜÀ§·Î ¹´Â ¹æ¹ýÀÔ´Ï´Ù. À§¿¡¼ ¼³¸íÇÑ Å¬¶óÀ̾ðÆ® ¹× ºê·ÎÄ¿ È®ÀÎ ÇÁ·Î¼¼½º´Â Æ®·£Àè¼Ç¿¡µµ Àû¿ëµË´Ï´Ù. ÀÌ °æ¿ì Ŭ¶óÀ̾ðÆ® ·±Å¸ÀÓ°ú ºê·ÎÄ¿ È®ÀÎÀÌ Æ®·£Àè¼Ç ¼öÁØ¿¡¼ ¾Ï½ÃÀûÀ¸·Î ¼öÇàµË´Ï´Ù. Æ®·£Àè¼ÇÀÌ ¿Ï°áµÇ¸é ºê·ÎÄ¿ È®ÀÎÀÌ ÀÚµ¿À¸·Î º¸³»Áý´Ï´Ù.
¼¼¼ÇÀº Æ®·£Àè¼ÇÀ¸·Î ±¸¼ºÇÒ ¼ö ÀÖÀ¸¸ç, JMS API´Â Æ®·£Àè¼Ç ÃʱâÈ, ¿Ï°á ¶Ç´Â ·Ñ¹éÀ» À§ÇÑ ¸Þ¼Òµå¸¦ Á¦°øÇÕ´Ï´Ù.
Æ®·£Àè¼Ç ³»ºÎ¿¡¼ ¸Þ½ÃÁö¸¦ »ý¼ºÇϰųª »ç¿ëÇÏ¸é ¸Þ½ÃÁö ¼ºñ½º´Â ´Ù¾çÇÑ ¹ß½Å ¹× ¼ö½ÅÀ» ÃßÀûÇÏ¿©, JMS Ŭ¶óÀ̾ðÆ®°¡ Æ®·£Àè¼ÇÀ» ¿Ï°áÇϵµ·Ï È£ÃâÇÑ °æ¿ì¿¡¸¸ ÀÛ¾÷À» ¿Ï·áÇÕ´Ï´Ù. Æ®·£Àè¼Ç ³»ºÎ¿¡¼ ƯÁ¤ ¹ß½Å ¶Ç´Â ¼ö½Å ÀÛ¾÷ÀÌ ½ÇÆÐÇÒ °æ¿ì ¿¹¿Ü°¡ ¹ß»ýÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ® ÄÚµå´Â ¿¹¿Ü¸¦ ¹«½ÃÇϰųª ÀÛ¾÷À» ´Ù½Ã ½ÃµµÇϰųª Àüü Æ®·£Àè¼ÇÀ» ·Ñ¹éÇÏ´Â ¹æ¹ýÀ¸·Î ¿¹¿Ü¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. Æ®·£Àè¼ÇÀÌ ¿Ï°áµÇ¸é ÀÛ¾÷ÀÌ ¸ðµÎ ¿Ï·áµË´Ï´Ù. Æ®·£Àè¼ÇÀÌ ·Ñ¹éµÇ¸é ¼º°øÀûÀÎ ÀÛ¾÷ÀÌ ¸ðµÎ Ãë¼ÒµË´Ï´Ù.
Æ®·£Àè¼ÇÀÇ ¹üÀ§´Â Ç×»ó ´ÜÀÏ ¼¼¼ÇÀÔ´Ï´Ù. Áï ´ÜÀÏ ¼¼¼Ç ÄÁÅؽºÆ®¿¡¼ ¼öÇàµÇ´Â Çϳª ÀÌ»óÀÇ »ý¼ºÀÚ ¶Ç´Â »ç¿ëÀÚ ÀÛ¾÷À» ¹¾î ´ÜÀÏ Æ®·£Àè¼ÇÀ¸·Î ºÐ·ùÇÒ ¼ö ÀÖ½À´Ï´Ù. Æ®·£Àè¼Ç ¹üÀ§°¡ ´ÜÀÏ ¼¼¼Ç¿¡ ±¹ÇѵǹǷΠ¸Þ½ÃÁö »ý¼º°ú »ç¿ëÀ» ¸ðµÎ ÃÑ°ýÇÏ´Â Á¾´Ü°£ Æ®·£Àè¼ÇÀº ¸¸µé ¼ö ¾ø½À´Ï´Ù.
¶ÇÇÑ JMS »ç¾çÀº ºÐ»ê Æ®·£Àè¼ÇÀ» Áö¿øÇÕ´Ï´Ù. Áï ¸Þ½ÃÁö »ý¼º ¹× »ç¿ëÀº µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ°ú °°Àº ´Ù¸¥ ÀÚ¿ø °ü¸®ÀÚ°¡ °ü·ÃµÈ ÀÛ¾÷µéÀ» Æ÷ÇÔÇÏ´Â ´õ Å©°í ºÐ»êµÈ Æ®·£Àè¼ÇÀÇ ÀϺΰ¡ µÉ ¼ö ÀÖ½À´Ï´Ù. Java Systems Application Server¿¡ Á¦°øµÈ °Í°ú °°Àº Æ®·£Àè¼Ç °ü¸®ÀÚ´Â ºÐ»ê Æ®·£Àè¼ÇÀ» Áö¿øÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù.
ºÐ»ê Æ®·£Àè¼ÇÀÇ °æ¿ì, ºÐ»ê Æ®·£Àè¼Ç °ü¸®ÀÚ´Â JTA(Java Transaction API)ÀÎ XA Resource API »ç¾ç¿¡ Á¤ÀÇµÈ 2´Ü°è ¿Ï°á ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ¿© ¿©·¯ ÀÚ¿ø °ü¸®ÀÚ(¸Þ½ÃÁö ¼ºñ½º, µ¥ÀÌÅͺ£À̽º °ü¸®ÀÚ µî)°¡ ¼öÇàÇÏ´Â ÀÛ¾÷À» ÃßÀûÇÏ°í °ü¸®ÇÕ´Ï´Ù. Java¿¡¼ ÀÚ¿ø °ü¸®ÀÚ ¹× ºÐ»ê Æ®·£Àè¼Ç °ü¸®ÀÚ °£ÀÇ »óÈ£ ÀÛ¿ëÀº JTA »ç¾ç¿¡¼ ¼³¸íÇÕ´Ï´Ù.
ºÐ»ê Æ®·£Àè¼Ç Áö¿øÀº ¸Þ½Ã¡ Ŭ¶óÀ̾ðÆ®°¡ JTA¿¡¼ Á¤ÀÇµÈ XAResource ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ºÐ»ê Æ®·£Àè¼Ç¿¡ Âü¿©ÇÒ ¼ö ÀÖÀ½À» ÀǹÌÇÕ´Ï´Ù. ÀÌ ÀÎÅÍÆäÀ̽º´Â 2´Ü°è ¿Ï°áÀ» ±¸ÇöÇÏ´Â ¿©·¯ ¸Þ¼Òµå¸¦ Á¤ÀÇÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ®Ãø¿¡¼ API È£ÃâÀÌ ÀÌ·ç¾îÁö´Â µ¿¾È ºê·ÎÄ¿´Â ºÐ»ê Æ®·£Àè¼Ç ³»ºÎÀÇ ´Ù¾çÇÑ ¹ß½Å ¹× ¼ö½Å ÀÛ¾÷À» ÃßÀûÇÏ°í Æ®·£Àè¼Ç »óŸ¦ ÃßÀûÇϸç JTS(Java Transaction Service)°¡ Á¦°øÇÏ´Â ºÐ»ê Æ®·£Àè¼Ç °ü¸®ÀÚ¿ÍÀÇ Á¶Á¤À» ÅëÇؼ¸¸ ¸Þ½Ã¡ ÀÛ¾÷À» ¿Ï·áÇÕ´Ï´Ù.
·ÎÄà Ʈ·£Àè¼Ç°ú ¸¶Âù°¡Áö·Î Ŭ¶óÀ̾ðÆ®´Â ¿¹¿Ü¸¦ ¹«½ÃÇϰųª ÀÛ¾÷À» ´Ù½Ã ½ÃµµÇϰųª Àüü ºÐ»ê Æ®·£Àè¼ÇÀ» ·Ñ¹éÇÏ´Â ¹æ¹ýÀ¸·Î ¿¹¿Ü¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¿µ±¸ ÀúÀå¼Ò
¾ÈÁ¤¼ºÀÇ ¶Ç ´Ù¸¥ Ãø¸éÀº ¸Þ½ÃÁö°¡ »ç¿ëÀÚ¿¡°Ô Àü´ÞµÉ ¶§±îÁö ºê·ÎÄ¿°¡ Áö¼Ó¼º ¸Þ½ÃÁö¸¦ ÀÒ¾î¹ö¸®Áö ¾Ê¾Æ¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. Áï ¸Þ½ÃÁö°¡ ¹°¸®Àû ´ë»ó¿¡ Àü´ÞµÇ¸é ºê·ÎÄ¿´Â À̸¦ ¿µ±¸ µ¥ÀÌÅÍ ÀúÀå¼Ò¿¡ ÀúÀåÇØ¾ß ÇÕ´Ï´Ù. ¾î¶² ÀÌÀ¯·Î ºê·ÎÄ¿°¡ ÁߴܵǴ °æ¿ì, ºê·ÎÄ¿´Â ¸Þ½ÃÁö¸¦ ³ªÁß¿¡ º¹±¸ÇÏ¿© ÇØ´ç »ç¿ëÀÚ¿¡°Ô Àü´ÞÇÒ ¼ö ÀÖ½À´Ï´Ù.
¶ÇÇÑ, ºê·ÎÄ¿´Â ¿µ±¸ °¡ÀÔÀ» ¿µ±¸È÷ ÀúÀåÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¿À·ù ¹ß»ý ½Ã ºê·ÎÄ¿´Â ¸Þ½ÃÁö°¡ ÁÖÁ¦ ´ë»ó¿¡ µµ´ÞÇÑ ´ÙÀ½¿¡ È°¼ºÈµÇ´Â ¿µ±¸ °¡ÀÔÀÚ¿¡°Ô ¸Þ½ÃÁö¸¦ Àü´ÞÇÒ ¼ö ¾ø½À´Ï´Ù.
¸Þ½ÃÁö Àü´ÞÀ» º¸ÀåÇÏ·Á´Â ¸Þ½Ã¡ ÀÀ¿ëÇÁ·Î±×·¥Àº ¸Þ½ÃÁö°¡ Áö¼Ó¼ºÀ» °®µµ·Ï ÁöÁ¤ÇÏ°í À̵éÀ» ¿µ±¸ °¡ÀÔÀ» °®´Â ÁÖÁ¦ ´ë»óÀ̳ª ´ë±â¿ ´ë»ó Áß Çϳª·Î Àü´ÞÇØ¾ß ÇÕ´Ï´Ù.
3Àå, "Message Queue ¼ºñ½º"¿¡¼´Â Message Queue ¼ºñ½º¿¡¼ Á¦°øÇÏ´Â ±âº» ¸Þ½ÃÁö ÀúÀå¼Ò¿Í °ü¸®ÀÚ°¡ ´ëü ÀúÀå¼Ò¸¦ ¼³Á¤ ¹× ±¸¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
½Ã½ºÅÛ¿¡¼ÀÇ ¸Þ½ÃÁö °æ·ÎÁö±Ý±îÁö ¼³¸íÇÑ ÀڷḦ ¿ä¾àÇÏ¿© ÀÌ Àý¿¡¼´Â Message Queue ¼ºñ½º¸¦ »ç¿ëÇÏ¿© »ý¼ºÀÚ¿¡¼ »ç¿ëÀÚ·Î ¸Þ½ÃÁö¸¦ Àü´ÞÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. ÀüüÀûÀÎ ¼³¸íÀ» À§ÇØ ¼¼ºÎ Á¤º¸¸¦ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù. Àü´Þ ´Ü°è¿¡¼ ½Ã½ºÅÛ¿¡ ÀÇÇØ Ã³¸®µÈ ¸Þ½ÃÁö´Â µÎ °¡Áö ¹üÁÖ·Î ±¸ºÐµË´Ï´Ù.
¸Þ½ÃÁö Àü´ÞÀº ±×¸² 2-7¿¡ ¼³¸íµÇ¾î ÀÖ½À´Ï´Ù.
±×¸² 2-7 ¸Þ½ÃÁö Àü´Þ ´Ü°è
¾ÈÁ¤ÀûÀ¸·Î Àü´ÞµÇ´Â Áö¼Ó¼º ¸Þ½ÃÁöÀÇ ¸Þ½ÃÁö Àü´Þ ´Ü°è´Â ´ÙÀ½°ú °°½À´Ï´Ù.
¸Þ½ÃÁö »ý¼º
1. Ŭ¶óÀ̾ðÆ® ·±Å¸ÀÓÀÌ ¿¬°áÀ» ÅëÇØ ¸Þ½ÃÁö »ý¼ºÀÚ¿¡¼ ºê·ÎÄ¿·Î ¸Þ½ÃÁö¸¦ Àü´ÞÇÕ´Ï´Ù.
¸Þ½ÃÁö ó¸® ¹× °æ·Î ÁöÁ¤
2. ºê·ÎÄ¿°¡ ¿¬°áÀ» ÅëÇØ ¸Þ½ÃÁö¸¦ ÀÐ¾î µé¿© ÀûÀýÇÑ ´ë»ó¿¡ ÀúÀåÇÕ´Ï´Ù.
3. ºê·ÎÄ¿°¡ (Áö¼Ó¼º) ¸Þ½ÃÁö¸¦ µ¥ÀÌÅÍ ÀúÀå¼Ò¿¡ ÀúÀåÇÕ´Ï´Ù.
4. ºê·ÎÄ¿°¡ ¸Þ½ÃÁö »ý¼ºÀÚÀÇ Å¬¶óÀ̾ðÆ® ·±Å¸ÀÓ¿¡°Ô ¸Þ½ÃÁö ¼ö½Å È®ÀÎÀ» º¸³À´Ï´Ù.
5. ºê·ÎÄ¿°¡ ¸Þ½ÃÁö °æ·Î ÁöÁ¤À» °áÁ¤ÇÕ´Ï´Ù.
6. ºê·ÎÄ¿°¡ ´ë»óÀÇ ¸Þ½ÃÁö¸¦ ÇØ´ç ¿¬°á¿¡ ±â·ÏÇÏ¿© »ç¿ëÀÚ¿¡ ´ëÇÑ °íÀ¯ ½Äº°ÀÚ Å±׸¦ ºÙÀÔ´Ï´Ù.
¸Þ½ÃÁö »ç¿ë
7. ¸Þ½ÃÁö »ç¿ëÀÚÀÇ Å¬¶óÀ̾ðÆ® ·±Å¸ÀÓÀÌ ¿¬°á¿¡¼ ¸Þ½ÃÁö »ç¿ëÀÚ·Î ¸Þ½ÃÁö¸¦ Àü´ÞÇÕ´Ï´Ù.
8. ¸Þ½ÃÁö »ç¿ëÀÚÀÇ Å¬¶óÀ̾ðÆ® ·±Å¸ÀÓÀÌ ¸Þ½ÃÁö »ç¿ë¿¡ ´ëÇÑ È®ÀÎÀ» ºê·ÎÄ¿·Î º¸³À´Ï´Ù.
¸Þ½ÃÁö ¼ö¸í ³¡
9. ºê·ÎÄ¿°¡ Ŭ¶óÀ̾ðÆ® È®ÀÎÀ» ó¸®ÇÏ°í ¸ðµç È®ÀÎÀÌ ¼ö½ÅµÇ¸é (Áö¼Ó¼º) ¸Þ½ÃÁö¸¦ »èÁ¦ÇÕ´Ï´Ù.
10. ºê·ÎÄ¿°¡ »ç¿ëÀÚÀÇ Å¬¶óÀ̾ðÆ® ·±Å¸ÀÓ¿¡¼ Ŭ¶óÀ̾ðÆ® È®ÀÎÀÌ Ã³¸®µÇ¾ú´ÂÁö È®ÀÎÇÕ´Ï´Ù.
°ü¸®ÀÚ°¡ ´ë»ó¿¡¼ ¸Þ½ÃÁö¸¦ »èÁ¦ÇÑ °æ¿ì ¶Ç´Â °ü¸®ÀÚ°¡ ¿µ±¸ °¡ÀÔÀ» Á¦°ÅÇϰųª ´Ù½Ã Á¤ÀÇÇÑ °æ¿ì ºê·ÎÄ¿°¡ ¸Þ½ÃÁö¸¦ »ç¿ëµÇ±â Àü¿¡ »èÁ¦ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÁÖÁ¦ ´ë»óÀÇ ¸Þ½ÃÁö°¡ Àü´ÞµÇÁö ¾Ê°í Á¦°ÅµÉ ¼ö ÀÖ½À´Ï´Ù. ºê·ÎÄ¿°¡ ¸Þ½ÃÁö¸¦ »èÁ¦ÇÏÁö ¾Ê°í »ç¿ë ºÒ´É ¸Þ½ÃÁö ´ë±â¿À̶ó´Â Ư¼ö ´ë»ó¿¡ ¸Þ½ÃÁö¸¦ ÀúÀåÇϵµ·Ï ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¸Þ½ÃÁö´Â ¸¸·áµÈ °æ¿ì, ¸Þ¸ð¸® Á¦ÇÑÀ¸·Î ÀÎÇØ Á¦°ÅµÈ °æ¿ì ¶Ç´Â Ŭ¶óÀ̾ðÆ®¿¡¼ ¿¹¿Ü°¡ ¹ß»ýÇÏ¿© Àü´Þ¿¡ ½ÇÆÐÇÑ °æ¿ì¿¡ »ç¿ë ºÒ´É ¸Þ½ÃÁö ´ë±â¿¿¡ ÀúÀåµË´Ï´Ù. »ç¿ë ºÒ´É ¸Þ½ÃÁö ´ë±â¿¿¡ ¸Þ½ÃÁö¸¦ ÀúÀåÇÏ¿© ½Ã½ºÅÛ ¹®Á¦¸¦ ÇØ°áÇÏ°í ƯÁ¤ »óȲ¿¡¼ ¸Þ½ÃÁö¸¦ º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.
SOAP ¸Þ½ÃÁö ÀÛ¾÷SOAP(Java Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇÑ SOAP Áö¿ø ÂüÁ¶)¸¦ »ç¿ëÇÏ¸é ºÐ»ê ȯ°æ¿¡¼ µÎ ÇÇ¾î °£¿¡ ±¸Á¶ÈµÈ µ¥ÀÌÅÍ(XML ½ºÅ°¸¶¿¡¼ ÁöÁ¤)¸¦ ±³È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. SunÀÇ SOAP ±¸ÇöÀº ÇöÀç ¾ÈÁ¤ÀûÀÎ SOAP ¸Þ½Ã¡°ú SOAP ¸Þ½ÃÁö °Ô½Ã¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯³ª, Message Queue ¼ºñ½º¸¦ »ç¿ëÇÏ¿© ¾ÈÁ¤ÀûÀÎ SOAP ¸Þ½Ã¡À» ¼öÇàÇÒ ¼ö ÀÖÀ¸¸ç ¿øÇÏ´Â °æ¿ì SOAP ¸Þ½ÃÁö¸¦ °Ô½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. Message Queue ¼ºñ½º´Â SOAP ¸Þ½ÃÁö¸¦ Á÷Á¢ Àü´ÞÇÏÁö ¾ÊÁö¸¸, SOAP ¸Þ½ÃÁö¸¦ JMS ¸Þ½ÃÁö·Î ·¡ÇÎÇÏ°í, ÀÌ·¯ÇÑ ¸Þ½ÃÁö¸¦ ÀÏ¹Ý JMS ¸Þ½ÃÁöó·³ »ý¼º ¹× »ç¿ëÇϸç, JMS ¸Þ½ÃÁö¿¡¼ SOAP ¸Þ½ÃÁö¸¦ ÃßÃâÇÒ ¼ö ÀÖ½À´Ï´Ù.
Message Queue¿¡¼´Â javax.xml.messaging ¹× com.sun.messaging.xmlÀÇ µÎ ÆÐÅ°Áö¸¦ ÅëÇØ SOAPÀ» Áö¿øÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¶óÀ̺귯¸®¿¡¼ ±¸ÇöµÈ Ŭ·¡½º¸¦ »ç¿ëÇÏ¿© SOAP ¸Þ½ÃÁö¸¦ ¼ö½ÅÇÏ°í, SOAP ¸Þ½ÃÁö¸¦ JMS ¸Þ½ÃÁö·Î ·¡ÇÎÇϸç, JMS ¸Þ½ÃÁö¿¡¼ SOAP ¸Þ½ÃÁö¸¦ ÃßÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. J2EE Ç÷§ÆûÀº SOAP ¸Þ½ÃÁö¸¦ ¾î¼Àºí ¹× ¿ª¾î¼ÀºíÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â java.xml.soap ÆÐÅ°Áö¸¦ Á¦°øÇÕ´Ï´Ù.
¾ÈÁ¤ÀûÀÎ SOAP ¸Þ½Ã¡À» ¼öÇàÇÏ·Á¸é ´ÙÀ½À» ¼öÇàÇØ¾ß ÇÕ´Ï´Ù.
- java.xml.soap ÆÐÅ°Áö¿¡ Á¤ÀÇµÈ °´Ã¼¸¦ »ç¿ëÇÏ¿© SOAP ¸Þ½ÃÁö¸¦ ±¸¼ºÇϰųª, javax.xml.messaging ÆÐÅ°Áö¿¡ Á¤ÀÇµÈ ¼ºí¸´À» »ç¿ëÇÏ¿© SOAP ¸Þ½ÃÁö¸¦ ¼ö½ÅÇϰųª, JAX-RPC¿Í °°Àº À¥ ¼ºñ½º¸¦ »ç¿ëÇÏ¿© SOAP ¸Þ½ÃÁö¸¦ ¼ö½ÅÇÕ´Ï´Ù.
- MessageTransformer À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© SOAP ¸Þ½ÃÁö¸¦ JMS ¸Þ½ÃÁö·Î º¯È¯ÇÕ´Ï´Ù.
- JMS ¸Þ½ÃÁö¸¦ ¿øÇÏ´Â ´ë»ó¿¡°Ô º¸³À´Ï´Ù.
- JMS ¸Þ½ÃÁö¸¦ ºñµ¿±â½Ä ¶Ç´Â µ¿±â½ÄÀ¸·Î »ç¿ëÇÕ´Ï´Ù.
- JMS ¸Þ½ÃÁö¸¦ »ç¿ëÇÑ ÈÄ MessageTransformer À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© ÇØ´ç ¸Þ½ÃÁö¸¦ SOAP ¸Þ½ÃÁö·Î º¯È¯ÇÕ´Ï´Ù.
- java.xml.soap ÆÐÅ°Áö¿¡ Á¤ÀÇµÈ SAAJ API¸¦ »ç¿ëÇÏ¿© SOAP ¸Þ½ÃÁö¸¦ ¿ª¾î¼ÀºíÇÕ´Ï´Ù.
SOAP ¸Þ½ÃÁö ¹× ó¸® ¹æ¹ý¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Java Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
Java ¹× C Ŭ¶óÀ̾ðÆ®Message Queue¿¡¼´Â ·¹°Å½Ã C ¹× C++ ÀÀ¿ë ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© JMS ±â¹Ý ¸Þ½Ã¡À» ÇÒ ¼ö ÀÖµµ·Ï ¸Þ½Ã¡ ¼ºñ½º¿¡ C API¸¦ Á¦°øÇÕ´Ï´Ù.
JMS ÇÁ·Î±×·¡¹Ö ¸ðµ¨Àº Message Queue C Ŭ¶óÀ̾ðÆ® ¼³°èÀÇ ±âÃÊÀÔ´Ï´Ù. C Ŭ¶óÀ̾ðÆ®¿ë Message Queue °³¹ß ¾È³»¼¿¡¼´Â C µ¥ÀÌÅÍ À¯Çü ¹× ÇÔ¼ö°¡ ÀÌ ¸ðµ¨À» ±¸ÇöÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
Java ÀÎÅÍÆäÀ̽º¿Í ¸¶Âù°¡Áö·Î C ÀÎÅÍÆäÀ̽ºµµ ´ÙÀ½ ±â´ÉÀ» Áö¿øÇÕ´Ï´Ù.
±×·¯³ª, Java Message Service »ç¾çÀº Java Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇؼ¸¸ Ç¥ÁØÀ¸·Î »ç¿ëµÇ°í, C Message Queue API´Â Message Queue °ø±ÞÀÚ¿¡°Ô¸¸ ÇØ´çµÇ¹Ç·Î ´Ù¸¥ JMS °ø±ÞÀÚ´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ´Ù¸¥ JMS °ø±ÞÀÚ´Â C Ŭ¶óÀ̾ðÆ®¸¦ Æ÷ÇÔÇÏ´Â ¸Þ½Ã¡ ÀÀ¿ë ÇÁ·Î±×·¥À» ó¸®ÇÒ ¼ö ¾ø½À´Ï´Ù.
C ÀÎÅÍÆäÀ̽º´Â ´ÙÀ½ ±â´ÉÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.
- °ü¸® ´ë»ó °´Ã¼ »ç¿ë
- ¸Ê, ½ºÆ®¸² ¶Ç´Â °´Ã¼ ¸Þ½ÃÁö À¯Çü
- »ç¿ëÀÚ ±â¹Ý È帧 Á¦¾î
- ´ë±â¿ ºê¶ó¿ìÀú
- JMS ÀÀ¿ë ÇÁ·Î±×·¥ ¼¹ö ±â´É(ConnectionConsumer, ºÐ»ê Æ®·£Àè¼Ç)
- SOAP ¸Þ½ÃÁö ¼Û¼ö½Å
- ¾ÐÃàµÈ JMS ¸Þ½ÃÁö ¼Û¼ö½Å
- ÀÚµ¿ À翬°á ¶Ç´Â ÆäÀÏ¿À¹ö - ¿¬°á ½ÇÆÐ ½Ã, Ŭ¶óÀ̾ðÆ® ·±Å¸ÀÓ¿¡¼ ºê·ÎÄ¿¿¡ ÀÚµ¿À¸·Î ´Ù½Ã ¿¬°á
- NO_ACKNOWLEDGE ¸ðµå