°Ë±¦Êé¿â > ÎÄѧÆäËûµç×ÓÊé > JMS¼òÃ÷½Ì³Ì(PDF¸ñʽ) >

µÚ14²¿·Ö

JMS¼òÃ÷½Ì³Ì(PDF¸ñʽ)-µÚ14²¿·Ö

С˵£º JMS¼òÃ÷½Ì³Ì(PDF¸ñʽ) ×ÖÊý£º ÿҳ4000×Ö

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡




¡¡¡¡¡¡¡¡¡¡¡¡¡¡Æ÷ʱ£¬±ØÐëÅ׳öÕâ¸öÒì³£¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡MessageEOFException£ºµ±ÕýÔÚ¶ÁÈ¡StreamMessage¡¡»òByteMessage¡¡Ê±µ½´ïÁ˲»ÆÚÍû¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄÁ÷½á⣬Ôò±ØÐëÅ׳öÕâ¸öÒì³£¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡MessageRormatException£ºµ±JMS¡¡¿Í»§¶ËÆóͼʹÓÃÏûÏ¢²»Ö§³ÖµÄÊý¾ÝÀàÐÍ»òÆóͼ½«¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏûÏ¢µÄÊý¾Ý¶Á×÷´íÎóµÄÀàÐÍʱ£¬±ØÐëÅ׳öÕâ¸öÒì³£¡£µ±ÏûÏ¢ÊôÐÔÖµ·¢ÉúͬÑùµÄÀàÐÍ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡´íÎóʱҲ±ØÐëÅ׳öÕâ¸öÒì³£¡£ÀýÈ磬Èç¹û¡¡StreamMessage¡£writeObject£¨£©±»¸øÁ˲»Ö§¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡³ÖµÄÀà»òÈç¹û¡¡StreamMessage¡£readShort£¨£©ÓÃÓÚ¶ÁÈ¡²¼¶ûÖµ£¬Ôò±ØÐëÅ׳öÕâ¸öÒì³£¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡Èç¹ûÌṩÉ̱»¸øÁ˲»ÄܽÓÊܵÄÀàÐÍ£¬ÔòÒ²±ØÐëÅ׳öÕâ¸öÒì³£¡£×¢Ò⣬һ¸öÌØÊâµÄÇé¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¿öÊǵ±Æóͼ¶ÁÈ¡²»ÕýÈ·¸ñʽµÄ¡¡String¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Êý¾Ý×÷ΪÊýÖµÐÍֵʱ£¬±ØÐëÅ׳ö¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡java¡£lang¡£NumberFormatException¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡MessageNotReadableException£ºµ±JMS¡¡¿Í»§¶ËÆóͼ¶ÁÒ»¸öÖ»¿ÉдµÄÏûϢʱ±ØÐëÅ׳ö¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡Õâ¸öÒì³£¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡MessageNotWriteableException£ºµ±JMS¡¡¡¡¿Í»§¶ËÆóͼдһ¸öÖ»¿É¶ÁµÄÏûϢʱ±ØÐëÅס¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡³öÕâ¸öÒì³£¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡ResourceAllocationException£ºµ±ÌṩÉ̲»Äܶ¨Î»·½·¨ÇëÇóµÄ×ÊԴʱ±ØÐëÅ׳öÕâ¸öÒì¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡³£¡£ÀýÈ磬µ±ÓÉÓÚJMS¡¡ÌṩÉÌ×ÊԴȱʧ¶øµ¼Öµ÷ÓÃcreateTopicConnection¡¡Ê§°ÜʱӦ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡µ±Å׳öÕâ¸öÒì³£¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡TransactionProgressException¡¡£ºµ±ÓÉÓÚÊÂÎñ´¦ÓÚ´¦ÀíÖжøµ¼Ö²Ù×÷ÎÞЧʱÅ׳öÕâ¸ö¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡Òì³£¡£ÀýÈ磬µ±»á»°Ê±·Ö²¼Ê½ÊÂÎñµÄÒ»²¿·Öʱµ÷Óá¡Session¡£mit£¨£©Ó¦µ±Å׳öÕâ¸ö¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡Òì³£¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡TransactionRolledBackException¡¡£ºµ±µ÷ÓÃSession¡£mit¡¡µ¼Öµ±Ç°ÊÂÎñ»Ø¹öʱ±ØÐëÅס¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡³öÕâ¸öÒì³£¡£¡¡¡¡



8¡¡¡¡JMS¡¡Ó¦Ó÷þÎñÆ÷¹¤¾ß¡¡¡¡



8¡£1¡¡¡¡¸ÅÊö¡¡¡¡



¡¡¡¡¡¡¡¡±¾ÕÂÃèÊöÓÃÓÚ²¢·¢´¦Àí¶©ÔÄÏûÏ¢µÄJMS¡¡¹¤¾ß¡£Ò²¶¨ÒåÁËJMS¡¡ÌṩÉÌÈçºÎÖ§³ÖJTS¡¡¿É¸ÐÖª¡¡

µÄ»á»°¡£ÕâЩ¹¤¾ßÖ÷ÒªÓÉJMS¡¡ÌṩÉÌʹÓᣡ¡¡¡

¡¡¡¡¡¡¡¡Èç¹ûJMS¡¡¿Í»§¶ËʹÓÃJTS¡¡¿É¸ÐÖª¹¤¾ßÀ´½øÐпͻ§¶Ë±à³Ì£¬ÔòËü¿ÉÄÜÊDz»¿ÉÒÆÖ²µÄ£¬ÒòΪ¡¡

²»ÒªÇóJMS¡¡ÌṩÉÌÖ§³ÖÕâЩ½Ó¿Ú¡£¡¡¡¡

¡¡¡¡¡¡¡¡ÔÚ±¾ÕÂÖÐÃèÊöµÄ¹¤¾ßÊÇJMS¡¡¡¡µÄÒ»¸öÌØÊâÀà±ð¡£ËüÃÇÊÇ¿ÉÑ¡µÄ£¬¿ÉÄÜÖ»Óв¿·ÖJMS¡¡Ìṩ¡¡

É̶ÔËüÃÇÌṩ֧³Ö¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡50¡¡/¡¡66¡¡¡¡

¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡51¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



8¡£2¡¡¡¡²¢·¢´¦Àí¶©ÔĵÄÏûÏ¢¡¡¡¡



¡¡¡¡¡¡¡¡JMS¡¡ÌṩÁËÒ»¸öÌØÊâµÄ¹¤¾ßÓÃÓÚ´´½¨MessageConsumer£¬Ëü¿ÉÒÔ²¢·¢µÄÏû·ÑÏûÏ¢¡£¡¡¡¡

¡¡¡¡¡¡¡¡Õâ¸ö¹¤¾ß½«ÕâÏ×÷·Ö³ÉÈý¸ö½ÇÉ«£º¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡JMS¡¡ÌṩÉÌ¡ª¡ªÓÃÓÚת·¢ÏûÏ¢¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡Ó¦Ó÷þÎñÆ÷¡ª¡ªÓÃÓÚ´´½¨Ïû·ÑÕߺ͹ÜÀíÓɲ¢·¢MessageListener¡¡¶ÔÏóʹÓõÄÏ̡߳£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡Ó¦Ó᪡ªÓÃÄ¿µÄµØºÍ¿ÉÑ¡µÄÏûϢѡÔñÆ÷¶¨ÒåÒ»¸ö¶©ÔÄ£¬²¢Ìṩһ¸öµ¥Ï̵߳ġ¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡MessageListener¡¡ÀàÀ´Ïû·ÑËüµÄÏûÏ¢¡£Ó¦Ó÷þÎñÆ÷½«¹¹ÔìÕâ¸öÀàµÄ¶à¸ö¶ÔÏóÀ´²¢·¢Ïû¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡·ÑÏûÏ¢¡£¡¡¡¡



8¡£2¡£1¡¡Session¡¡¡¡



¡¡¡¡¡¡¡¡»á»°ÌṩÁËÓ¦Ó÷þÎñÆ÷ʹÓõÄÈý¸ö·½·¨£º¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡setMessageListener£¨£©¡¡ºÍ¡¡getMessageListener£¨£©¡¡¡ª¡ª»á»°µÄ¡¡MessageListener¡¡Í¨¹ý¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ConnectionConsumer¡¡Ïû·Ñ·ÖÅäµ½Õâ¸ö»á»°µÄÏûÏ¢£¬ÈçºóÃæµÄ¼¸¸ö¶ÎÂäÃèÊö¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡run£¨£©¡ª¡ª»á»°µÄMessageListener¡¡ÒÀ´Î´¦ÀíÓÉConnectionConsumer¡¡·ÖÅäµ½»á»°µÄÏû¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ï¢¡£µ±¼àÌýÆ÷´Ó×îºóÒ»¸öÏûÏ¢´¦Àí·µ»Øʱ£¬run£¨£©·µ»Ø¡£¡¡¡¡

¡¡¡¡¡¡¡¡Ó¦Ó÷þÎñÆ÷ͨ³£±»¸øÒ»¸ö¡¡MessageListener¡¡À࣬Ëü°üº¬ÁËÓÉÓ¦ÓóÌÐòÔ±±àдµÄ´¦ÀíÏûÏ¢¡¡

µÄµ¥Ï̴߳úÂë¡£Ó¦Ó÷þÎñÆ÷Ò²±»¸ø¼àÌýÆ÷ÒªÏû·ÑÏûÏ¢µÄÄ¿µÄµØºÍÏûϢѡÔñÆ÷¡£¡¡¡¡

¡¡¡¡¡¡¡¡Ó¦Ó÷þÎñÆ÷½«¸ºÔð´´½¨´¦ÀíÏûÏ¢´¦ÀíµÄJMS¡¡Connection£¬ConnectionConsumer¡¡ºÍSession¡¡¡£¡¡

Ó¦Ó÷þÎñÆ÷½«°´Ðè´´½¨MessageListener¡¡ÊµÀý²¢½«ËüÃÇ×¢²áµ½Ëü×Ô¼ºµÄ»á»°ÖС£¡¡¡¡

¡¡¡¡¡¡¡¡ÓÉÓÚÐí¶à¼àÌýÆ÷ÐèҪʹÓûỰµÄ·þÎñ£¬Òò´Ë¼àÌýÆ÷ºÜ¿ÉÄÜÒªÇó½«ËüµÄ»á»°´«Èëµ½ËüµÄ¹¹¡¡

ÔìÆ÷ÖС£¡¡¡¡



8¡£2¡£2¡¡ServerSession¡¡¡¡



¡¡¡¡¡¡¡¡ServerSession¡¡ÊÇÒ»¸öÓÉÓ¦Ó÷þÎñÆ÷ʵÏֵĶÔÏó¡£Ó¦Ó÷þÎñÆ÷ʹÓÃËüÀ´½«Ò»¸öÏ̺߳ÍÒ»¸ö¡¡

JMS¡¡»á»°¹ØÁªÆðÀ´¡£¡¡¡¡

¡¡¡¡¡¡¡¡ServerSession¡¡ÊµÏÖÁËÁ½¸ö·½·¨£º¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡getSession£¨£©¡ª¡ª·µ»ØServerSession¡¡µÄJMS¡¡»á»°¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡start£¨£©¡ª¡ªÆô¶¯ServerSession¡¡Ï̵߳ÄÖ´ÐУ¬²¢Ö´ÐйØÁªµÄJMS¡¡»á»°µÄrun¡¡·½·¨¡£¡¡¡¡



8¡£2¡£3¡¡ServerSessionPool¡¡¡¡



¡¡¡¡¡¡¡¡ServerSessionPool¡¡ÊÇÒ»¸öÓÉÓ¦Ó÷þÎñÆ÷ʵÏֵĶÔÏó£¬ËüÌṩÁËÓÃÓÚ´¦Àí¡¡

ConnectionConsumer¡¡µÄÏûÏ¢µÄServerSession¡¡³Ø¡£¡¡¡¡

¡¡¡¡¡¡¡¡ËüÖ»ÓÐÒ»¸ö·½·¨ÊÇgetServerSession£¨£©¡¡¡£Õâ¸ö·½·¨´Ó³ØÖÐɾ³ýÒ»¸öServerSession¡¡²¢½«Ëü·µ¡¡

»Ø¸øµ÷ÓÃÕߣ¨¼Ù¶¨ÊÇConnectionConsumer¡¡£©£¬ÓÃÓÚÏû·ÑÒ»¸ö»ò¶à¸öÏûÏ¢¡£¡¡¡¡

¡¡¡¡¡¡¡¡JMS¡¡Ã»ÓÐ˵Ã÷ÈçºÎʵÏֳء£Ëü¿ÉÄÜÊÇÒ»¸ö¾²Ì¬µÄServerSession¡¡³Ø£¬»òÕßËü¿ÉÒÔʹÓøüר¡¡

ÒµµÄËã·¨À´°´Ð趯̬´´½¨ServerSession¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡Èç¹ûServerSessionPool¡¡Ã»ÓÐÁËServerSession£¬ÄÇôgetServerSession£¨£©·½·¨¿ÉÄÜ×èÈû¡£Èç¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡51¡¡/¡¡66¡¡¡¡

¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡52¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¹ûConnectionConsumer¡¡±»×èÈû£¬ÄÇôËü²»ÄÜת·¢ÐµÄÏûÏ¢Ö±µ½ServerSession¡¡·µ»Ø¡£¡¡¡¡



8¡£2¡£4¡¡ConnectionConsumer¡¡¡¡



¡¡¡¡¡¡¡¡¶ÔÓÚÓ¦Ó÷þÎñÆ÷À´Ëµ£¬Á¬½ÓÌṩÁË´´½¨¡¡ConnectionConsumer¡¡¡¡µÄרÓù¤¾ß¡£ËüÏû·ÑµÄÏû¡¡

Ï¢ÓÉÄ¿µÄµØºÍÏûϢѡÔñÆ÷Ö¸¶¨¡£ÁíÍ⣬ConnectionConsumer¡¡±ØÐë½»¸øServerSessionPool¡¡ÓÃÓÚ¡¡

´¦ÀíËüµÄÏûÏ¢¡£Ö¸¶¨¡¡maxMessages¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÖµÓÃÓÚÏÞÖÆ¡¡ConnectionConsumer¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ò»´Î¿ÉÒÔ¼ÓÔص½¡¡

ServerSession¡¡»á»°µÄÏûÏ¢ÊýÁ¿¡£¡¡¡¡

¡¡¡¡¡¡¡¡Í¨³££¬µ±Óµ¶ÂÇá΢ʱ£¬ConnectionConsumer¡¡´Ó³ØÖеõ½Ò»¸öServerSession£¬ÓÃÒ»¸öÏûÏ¢¡¡

¼ÓÔØËüµÄ»á»°£¬È»ºóÆô¶¯Ëü¡£µ±Óµ¶ÂÑÏÖØʱ£¬ÏûÏ¢¿ÉÄܱ»Í˻ء£Èç¹û·¢ÉúÍ˻أ¬¡¡

ConnectionConsumer¡¡¿ÉÒÔÓöà¸öÏûÏ¢À´¼ÓÔØÿ¸ö¡¡Session¡¡¡£Õâ¼õÉÙÁËÏß³ÌÉÏÏÂÎĵÄÇл»£¬¼õ¡¡

СÁËijЩÏûÏ¢´¦ÀíÅÅÐòʱ×ÊÔ´µÄʹÓᣡ¡¡¡



8¡£2¡£5¡¡ConnectionConsumer¡¡ÈçºÎʹÓÃServerSession¡¡¡¡



¡¡¡¡¡¡¡¡ÓÉJMS¡¡ÌṩÉÌʵÏÖµÄConnectionConsumer¡¡Ê¹ÓÃServerSession¡¡À´´¦ÀíÒ»µ½¶à¸öµ½´ïµÄÏû¡¡

Ï¢¡£°´ÒÔÏ·½Ê½×öÕâÏ×÷£º¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡´ÓServerSessionPool¡¡Öеõ½Ò»¸öServerSession¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡µÃµ½ServerSession¡¡µÄSession¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡ÓÃÒ»¸ö»ò¶à¸öÏûÏ¢¼ÓÔØSession¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡È»ºóÆäËûServerSession¡¡À´Ïû·ÑÕâЩÏûÏ¢¡£¡¡¡¡

¡¡¡¡¡¡¡¡ÓÃÓÚQueueConnection¡¡µÄConnectionConsumer¡¡½«ËüµÄÏûÏ¢¼ÓÔص½QueueSession£¬Í¬Ñù£¬¡¡

ÓÃÓÚTopicConnection¡¡µÄConnectionConsumer¡¡¼ÓÔØTopicSession¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡×¢Ò⣬JMS¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐ˵Ã÷¡¡ConnectionConsumer¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÈçºÎÓÃÏûÏ¢¼ÓÔØ¡¡Session¡¡¡£ÓÉÓÚ¡¡

ConnectionConsumer¡¡ºÍSession¡¡¶¼ÓÉͬһ¸öJMS¡¡ÌṩÉÌʵÏÖ£¬Òò´ËËüÃÇ¿ÉÒÔÓÃ˽ÓлúÖÆÍê³É¡¡

ÕâÖÖ¼ÓÔØ¡£¡¡¡¡



8¡£2¡£6¡¡Ó¦Ó÷þÎñÆ÷ÈçºÎʵÏÖServerSession¡¡¡¡



¡¡¡¡¡¡¡¡JMS¡¡Ã»ÓÐ˵Ã÷ServerSession¡¡µÄʵÏÖ¡£ÏÂÃæ³öÏÖµÄÆÕͨʵÏÖ½âÊÍÁËÕâ¸ö¸ÅÄ¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡Ó¦Ó÷þÎñÆ÷Ϊ¡¡ServerSession¡¡¡¡¡¡¡¡¡¡¡¡´´½¨Ò»¸öỊ̈߳¬×¢²á¡¡ServerSession¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄ¡¡runObject¡¡¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡runObject¡¡µÄʵÏÖÊÇÓ¦Ó÷þÎñÆ÷˽Óеġ£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡ServerSession¡¡µÄstart¡¡·½·¨µ÷ÓÃÏ̵߳Ästart¡¡·½·¨¡£ºÍËùÓеÄjava¡¡Ïß³ÌÒ»Ñù£¬µ÷ÓÃstart¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡³õʼ»¯Ï̵߳ÄÖ´Ðв¢µ÷ÓÃÏ̵߳ÄrunObject¡£ServerSession¡£start£¨ConnectionConsumer£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄµ÷ÓÃÕߺÍServerSession¡¡µÄrunObject¡¡ÏÖÔÚÔËÐÐÔÚ²»Í¬µÄÏß³ÌÖС£¡¡¡¡

¡¡¡¡¡¡¡¡z¡¡¡¡¡¡runObject¡¡¡¡½«×öһЩÄÚ²¿´¦ÀíÈ»ºóµ÷ÓûỰµÄ¡¡run£¨£©·½·¨¡£ÔÚ·µ»Øʱ£¬runObject¡¡¡¡½«¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ServerSession¡¡·µ»Ø¸øServerSessionPool¡¡È»ºó·µ»Ø¡£ÕâÖÕÖ¹ÁËServerSession¡¡Ï̵߳ÄÖ´¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÐУ¬²¢ÔÙ´ÎÑ­»·Æô¶¯¡£¡¡¡¡



8¡£2¡£7¡¡½á¹û¡¡¡¡



¡¡¡¡¡¡¡¡JMS¡¡¶¨ÒåÁËÁé»îµÄ»úÖƽ«²¢·¢ÏûÏ¢Ïû·ÑµÄ¹¤×÷²ð·Ö³ÉÊʺÏÓÚÿ¸ö²ÎÓëÕߵĽÇÉ«¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡52¡¡/¡¡66¡¡¡¡

¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡53¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ó¦ÓóÌÐòÔ±ÌṩһÖÖÒ×ÓÚÊéдµ¥Ï̵߳ÄMessageListener¡¡ÊµÏÖ¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡JMS¡¡ÌṩÕß±£³Ö¶ÔÏûÏ¢µÄ¿ØÖÆÖ±µ½ËüÃDZ»×ª·¢µ½MessageListener¡£Õâ±£Ö¤ËüÊÇÔÚÏûϢȷ¡¡

ÈϵÄÖ±½Ó¿ØÖÆ֮ϡ£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ó¦Ó÷þÎñÆ÷¿ØÖÆConnectionConsumer¡¡µÄÉèÖú͹ÜÀíÓÃÓÚÖ´ÐÐMessageListener¡¡µÄÏ̡߳£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂͼ½âÊÍÁËÈý¸ö½ÇÉ«ºÍËüÃÇʵÏֵĶÔÏó¼äµÄ¹Øϵ¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂͼ½âÊÍÁËConnectionConsumer¡¡½«ÏûϢת·¢¸øMessageListener¡¡µÄ¹ý³Ì¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡53¡¡/¡¡66¡¡¡¡

¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡54¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



8¡£3¡¡¡¡XAConnectionFactory¡¡¡¡



¡¡¡¡¡¡¡¡Ä³Ð©Ó¦Ó÷þÎñÆ÷Ìṩ¶ÔÓÃÓÚ·Ö²¼Ê½ÊÂÎñµÄ×ÊÔ´·Ö×éÌṩ֧³Ö¡£ÎªÁËÔÚ·Ö²¼Ê½ÊÂÎñÖаüº¬¡¡

JMS¡¡ÊÂÎñ£¬Ó¦Ó÷þÎñÆ÷ÒªÇóJTA¡¡¼æÈÝJMS¡¡ÌṩÉÌ¡£JMS¡¡ÌṩÉÌÓÃJMS¡¡XAConnectionFactory¡¡±©¡¡

¶ËüµÄJTA¡¡Ö§³Ö£¬Ó¦Ó÷þÎñÆ÷ʹÓÃXAConnectionFactory¡¡À´´´½¨XAConnection¡¡¡£¡¡¡¡

¡¡¡¡¡¡¡¡XAConnectionFactory¡¡ÌṩÁ˺ÍConnectionFactory¡¡Ò»ÑùµÄÊÚȨѡÏî¡£¡¡¡¡

¡¡¡¡¡¡¡¡XAConnectionFactory¡¡¶ÔÏóÊÇJMS¡¡ÊܹÜÀí¶ÔÏ󣬾ÍÏñConnectionFactory¡¡¶ÔÏó¡£ÆÚÍûÓÃÓ¦¡¡

Ó÷þÎñÆ÷ʹÓÃJNDI¡¡ÕÒµ½ËüÃÇ¡£¡¡¡¡



8¡£4¡¡¡¡XAConnection¡¡¡¡



¡¡¡¡¡¡¡¡XAConnection¡¡Í¨¹ýÌṩ´´½¨XASession¡¡À©Õ¹ÁËConnection¡¡µÄÄÜÁ¦¡£¡¡¡¡



8¡£5¡¡¡¡XASession¡¡¡¡



¡¡¡¡¡¡¡¡XASession¡¡ÌṩÁË»ñÈ¡¿´ÆðÀ´ÏóÆÕͨ¡¡Session¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶ÔÏóµÄ¶ÔÏóºÍ¿ØÖƻỰÊÂÎñÉÏÏÂÎĵġ¡

javax¡£transaction¡£xa¡£XAResource¡¡¶ÔÏó¡£XAResource¡¡µÄ¹¦Äܷdz£ÀàËÆÓÚ±ê×¼X/Open¡¡XA¡¡×ÊÔ´½Ó¡¡

¿Ú¶¨ÒåµÄ¹¦ÄÜ¡£¡¡¡¡

¡¡¡¡¡¡¡¡Ó¦Ó÷þÎñÆ÷ͨ¹ý»ñÈ¡XAResource¡¡À´¿ØÖÆXASession¡¡¡¡µÄÊÂÎñ·ÖÅä¡£ËüʹÓÃXAResource¡¡À´¡¡

½«»á»°·ÖÅä¸ø·Ö²¼Ê½ÊÂÎñ£¬×¼±¸ºÍÌá½»ÊÂÎñÉϵŤ×÷µÈµÈ¡£¡¡¡¡

¡¡¡¡¡¡¡¡XAResource¡¡Îª¶àÊÂÎñÉϵĽ»²æ¹¤×÷¡¢»Ö¸´´¦ÀíÖеÄÊÂÎñÁбíµÈµÈÌṩÁ˹«Æ½µÄרҵ¹¤¡¡

¾ß¡£JTA¡¡¸ÐÖªµÄJMS¡¡ÌṩÉϱØÐëÈ«²¿ÊµÏÖÕâ¸ö¹¦ÄÜ¡£Õâ¿ÉÒÔͨ¹ýʹÓÃÖ§³ÖXA¡¡¡¡µÄÊý¾Ý¿â·þÎñ¡¡

À´×öµ½£¬»òÕßJMS¡¡ÌṩÉÌ¿ÉÒÔÑ¡Ôñ´Ó»ù´¡¿ªÊ¼À´ÊµÏÖÕâ¸ö¹¦ÄÜ¡£¡¡¡¡

¡¡¡¡¡¡¡¡½«XASession¡¡µÄSession¡¡¸³¸øÓ¦Ó÷þÎñÆ÷µÄ¿Í»§¶Ë¡£Ö®ºó£¬Ó¦Ó÷þÎñÆ÷¿ØÖƺǫ́XASession¡¡

µÄÊÂÎñ¹ÜÀí¡£¡¡¡¡

¡¡¡¡¡¡¡¡µ«±ØÐë×¢ÒâµÄÊÇ£¬·Ö²¼Ê½ÊÂÎñÉÏÏÂÎIJ»»áËæ×ÅÏûÏ¢Á÷¶¯£»Ò²¾ÍÊÇ˵£¬½ÓÊÕÏûÏ¢µÄÊÂÎñºÍ¡¡

ºÍÉú²úÏûÏ¢µÄÊÂÎñ²»ÄÜÊÇͬһ¸ö¡£ÕâÊÇÒì²½ÏûÏ¢ºÍͬ²½´¦Àí¼äµÄ»ù±¾²î±ð¡£ÏûÏ¢Éú²úÕߺÍÏû¡¡

·ÑÕßʹÓÃÁ½ÖÖ·½Ê½À´½¨Á¢JMS¡¡ÌṩÉ̱£Ö¤Ò»´ÎÖ»ÓÐÒ»¸öÏûÏ¢±»×ª·¢µÄÄÜÁ¦¡£¡¡¡¡

¡¡¡¡¡¡¡¡ÔÙ´ÎÖØÉ꣬ÔÚSession¡¡ÖÐÉú²úºÍ/»òÏû·ÑÏûÏ¢µÄÐÐΪ¶¼¿ÉÒÔÊÇÊÂÎñÐԵġ£ÔÚ²»Í¬»á»°¼äÉú¡¡

²úºÍÏû·ÑÒ»¸öÌض¨ÏûÏ¢µÄÐÐΪ²»ÄÜÊÇÊÂÎñÐԵġ£¡¡¡¡



8¡£6¡¡¡¡JMS¡¡Ó¦Ó÷þÎñÆ÷½Ó¿Ú¡¡¡¡



¡¡¡¡¡¡¡¡PTP¡¡ºÍPub/Sub¡¡Á½¸öÓò¶¼ÌṩÁËËüÃÇ×Ô¼ºµÄJTS¡¡¸ÐÖªµÄJMS¡¡¹¤¾ß¡£¡¡¡¡

¡¡¡¡¡¡¡¡µ«ÊÇ£¬Ó¦µ±ÓÅÏÈʹÓù«¹²½Ó¿Ú¡£±í8©1¡¡ÁгöÁËJMS¡¡µÄ¹«¹²½Ó¿Ú¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡±í8©1¡¡ÓòÄÚ¿ÉÑ¡½Ó¿ÚµÄ¹Øϵ¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡JMS¡¡¹«¹²½Ó¿Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡PTP¡¡½Ó¿Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Pub/Sub¡¡½Ó¿Ú¡¡¡¡



¡¡¡¡¡¡¡¡¡¡ServerSessionPool¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐÓòÌض¨µÄ½Ó¿Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐÓòÌض¨µÄ½Ó¿Ú¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡ServerSession¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐÓòÌض¨µÄ½Ó¿Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐÓòÌض¨µÄ½Ó¿Ú¡¡¡¡



¡¡¡¡¡¡¡¡ConnectionConsumer¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐÓòÌض¨µÄ½Ó¿Ú¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ã»ÓÐÓòÌض¨µÄ½Ó¿Ú¡¡¡¡



¡¡¡¡¡¡¡¡XAConnectionFactory¡¡¡¡¡¡¡¡XAQueueConnectionFactory¡¡¡¡XATopicConnectionFactory¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡54¡¡/¡¡66¡¡¡¡

¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡55¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡

·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©

Äã¿ÉÄÜϲ»¶µÄ