Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
»ùÓÚActiveMQµÄÏûÏ¢Öмä¼þϵͳ OneMMÂß¼­ÓëÎïÀí¼Ü¹¹Éè¼ÆÏê½â
 
×÷ÕߣºÍõ½ð½£ À´Ô´: CSDN »ðÁú¹ûÈí¼þ  ·¢²¼ÓÚ 2015-10-09
  4046  次浏览      27
 

ÕªÒª£º»¥ÁªÍø¿ª·¢ÎÞСÊ£¬Ò»¸öССµÄÎÊÌâÒ²Äܱ»ÎÞÏÞ·Å´ó¡£±ÈÈçÒ»¸öÓ¦ÓÃÓöµ½µÄÎÊÌâ¿ÉÄÜÓëϵͳ¡¢ÍøÂç¡¢Ó¦Óᢼܹ¹¡¢Êý¾ÝµÈ¸÷¸ö²ãÃæµÄÎÊÌâÓйأ¬Ö»ÓÐÄÍÐÄ·¢ÏÖ²¢´¦ÀíºÃÿһ¸öÏà¹Ø²ãÃæµÄÎÊÌ⣬²ÅÄÜ×îÖÕÐγÉÒ»¿îºÃµÄ»¥ÁªÍøÓ¦Óá£

1. »ù±¾½éÉÜÓë×é¼þ¼Ü¹¹Í¼

ά»ù°Ù¿Æ¶ÔÏûÏ¢Öмä¼þµÄ¶¨ÒåÊÇ¡°Message-oriented Middleware is software infrastructure focused on sending and receiving messages between distributed system¡£¡±·Ö²¼Ê½ÏµÍ³ÖÐʵÏÖÏûÏ¢·¢ËͺͽÓÊܵĻù´¡ÉèÊ©¡£Ëæ×ÅÆóÒµÐÅÏ¢»¯½¨ÉèµÄ²»¶ÏÉîÈ룬¶àÖÖÒµÎñÓ¦ÓÃÏ໥¹ØÁª£¬ÈÝÒ×Ôì³Éµ×²ãÊý¾Ý·ÖÉ¢£¬Ó¦ÓÃϵͳ¼äµÄñîºÏ¶È¸ß¡£Õë¶Ô¸ÃÎÊÌâÓ¦´ÓÕûÌåÉϵ÷ÕûĿǰϵͳ¼Ü¹¹£¬ÃæÏò²»Í¬ÒµÎñÓ¦ÓÃÌṩͳһµÄÊý¾Ý·ÃÎÊ·þÎñ£¬Ê¹ÓÃÏûÏ¢Öмä¼þ¶Ô²»Í¬ÏµÍ³¼äµÄ½»»¥½øÐнâñÏûÏ¢Öмä¼þ¼¼ÊõÓÐÁ½¸öºËÐŦÄÜ£ºÒì²½ºÍ½âñî¡£ÕâÁ½¸öºËÐŦÄÜÕûÌåÉÏÌá¸ßÁËÓ¦ÓÃϵͳµÄ¹¤×÷ЧÂÊ£¬ÔöÇ¿ÁËϵͳµÄ¿ÉÓÃÐÔ¡¢Îȶ¨ÐԺͿÉÀ©Õ¹ÐÔ£¬ÌáÉýÁËÓû§ÌåÑ顣ʹÓÃOneMMÏûÏ¢Öмä¼þϵͳ¿ÉÒÔʵÏÖÓ¦ÓÃϵͳ¸÷Ä£¿é¼ä»òÓ¦ÓÃϵͳÓëÆäËûϵͳ£¨ÈçERPϵͳ¡¢Ö§¸¶ÏµÍ³£©Ö®¼äµÄ½âñîÓëÒì²½ÏûÏ¢´«Ê䣬¸Ä±äÖ±½Óͨ¹ýÊý¾Ý¿â¹²Ïí·½Ê½½»»»Êý¾Ý£¬Ôì³Éϵͳ֮¼äµ×²ãÊý¾ÝñîºÏ¶È¹ý¸ßÎÊÌâÒÔ¼°Ô¶³Ì¿çµØÓòÓ¦ÓÃϵͳµÄÊý¾Ý½»»»ÎÊÌâ¡£

OneMMϵͳ×é¼þÂß¼­¼Ü¹¹Í¼ÈçÏ£º

ÏûÏ¢Öмä¼þ¼Ü¹¹Ö÷Òª×é¼þ˵Ã÷£º

£¨1£©ÏûÏ¢·¢ËÍ×é¼þ£º½ÓÊÕÓ¦Ó÷þÎñÆ÷·¢ÆðµÄÍâϵͳµ÷ÓÃÇëÇ󣬲¢½«ÇëÇóÏûÏ¢·¢Ë͵½±¾µØÏûÏ¢¶ÓÁлò¿çÖÐÐÄÏûÏ¢¶ÓÁУ»

£¨2£©ÏûÏ¢½ÓÊÕ×é¼þ£º½ÓÊÕ±¾µØÏûÏ¢¶ÓÁлò¿çÖÐÐÄÏûÏ¢¶ÓÁÐÖеÄÇëÇóÏûÏ¢£¬²¢µ÷ÓÃÍâϵͳÌṩµÄÒµÎñ½Ó¿Ú£»

£¨3£©ÏûϢת·¢×é¼þ£ºÏûϢת·¢Æ÷°ïÖú¿çÖÐÐÄÓ¦ÓýøÐÐÏûϢת·¢£¬ÈçͼÖеÄÖÐÐÄ1ºÍÖÐÐÄ2Ö®¼ä£¬Ó¦ÓÿÉÒÔͨ¹ýÏûϢת·¢Æ÷½øÐÐÏûÏ¢»¥·¢£»

£¨4£©ÏûÏ¢´úÀí×é¼þ£ºÏûÏ¢´úÀí×é¼þÖ÷Òª¸ºÔð½ÓÊÕ¿çÖÐÐÄÏûÏ¢£¬²¢½«¿çÖÐÐÄÏûÏ¢¸ù¾ÝÏà¹Ø²ÎÊý·¢Ë͵½ÏÂͼÖÐÐÄ1µÄ¡°ÇëÇó´¦Àí½á¹ûTopic¶©ÔÄÏûÏ¢¶ÓÁС°»ò·Ö·¢µ½ÖÐÐÄ2µÄÏà¹Ø¾ßÌåÒµÎñ¶ÓÁУ»

£¨5£©¶ÓÁйÜÀí×é¼þ£ºÅäÖùÜÀí²»Í¬ÖÐÐÄϵÄÈ«²¿ÏûÏ¢¶ÓÁУ¬¼°Ïà¹Øµ÷Óýӿڣ»

£¨6£©ÏûÏ¢¶ÓÁÐ×é¼þ£ºÌṩÏûÏ¢¶ÓÁд´½¨¡¢Ïú»ÙµÈ¶ÓÁвÙ×÷¼°¹ÜÀí¹¦ÄÜ£¬¼Ü¹¹Ê¹ÓÃActiveMQ¿ªÔ´ÏûÏ¢¶ÓÁй¤¾ß¡£

£¨7£©ÏûÏ¢»º´æ×é¼þ£º±¾µØ»ò¿çÖÐÐÄÒì²½ÏûϢͨ¹ýRedis»º´æ×é¼þ»ñµÃ·µ»Ø½á¹ûÏû

2. ÏûÏ¢Á÷ת¼Ü¹¹Í¼

2.1ͬ²½ÏûÏ¢Á÷ת¼Ü¹¹£ºÏûÏ¢·¢ËÍ×é¼þ´´½¨»á»°·¢³öÒì²½ÏûÏ¢ºó£¬Í¬²½Á÷³Ì»á»°Ñ­»·½ÓÊÕTopicÏûÏ¢»Ø¸´¶©ÔĶÓÁеĹ㲥ÏûÏ¢£¬Í¨¹ý»á»°Î¨Ò»±êʶÅжÏÊÇ·ñΪ¸Ã»á»°µÄ½á¹ûÏûÏ¢£¬Êǵϰ·µ»Ø¸øÓ¦Ó㬷ñÔòºöÂÔ¸ÃÏûÏ¢£¬³¬Ê±ºóÖ±½Ó·µ»Ø³¬Ê±¡£Í¬²½ÏûÏ¢Á÷ת¼Ü¹¹Í¼ÈçÏ£º

2.2Òì²½ÏûÏ¢Á÷ת¼Ü¹¹£º±¾µØ»ò¿çÖÐÐÄÒì²½ÏûϢͨ¹ýRedis»º´æ×é¼þ»ñµÃ·µ»Ø½á¹ûÏûÏ¢¡£Òì²½ÏûÏ¢½á¹û£¬Í¨¹ýн¨»á»°·µ»Ø¡£Éú²úÕß·¢ËÍÏûÏ¢ºó¹Ø±Õ»á»°£¬ÎÞÐèµÈ´ý¡£ÍêÈ«µÄÒì²½Á÷³ÌÎÞÐè·µ»Ø½á¹ûÏûÏ¢£¬Óû§Í¨¹ý·¢Æð²éѯÇëÇóͨ¹ý»º´æ»ò±¾µØÏµÍ³Êý¾Ý¿â»ñµÃ½á¹û¡£µ«ÊÇÔÚijЩÏîĿʵ¼ÊʹÓÃÖУ¬Òì²½»á»°²»»áÁ¢¼´¹Ø±Õ¶øÊǵȴý½á¹û£¬±»µ÷ÓÃÕßÖ´ÐÐÇëÇóºó½«½á¹û°´ÕÕÒì²½ÏûÏ¢·¢ËÍÁ÷³ÌÖ÷¶¯·¢ËÍ»ØÈ¥¡£»á»°Í¨¹ýÂÖѯRedis½á¹û»º´æ£¬¸ù¾ÝSessionΨһ±êʶ·ûÅжÏÊÇ·ñ´æÔڸûỰµÄ·µ»Ø½á¹û£¬»ñµÃ½á¹ûºó½«½á¹û·µ»Ø¸øÇëÇ󷢯ðÕß¡£Òì²½µÄÌØµãÊDZ»µ÷ÓÃÕßÖ÷¶¯»ñÈ¡ÏûÏ¢£¬²¢Ö÷¶¯Í¨¹ýÆäËû¶ÓÁз¢Ëͽá¹ûÏûÏ¢£¬Õâʱ±»µ÷ÓÃÕß¿ÉÒÔ¸ù¾Ý×Ô¼ºµÄ״̬ºÍ´¦ÀíÇé¿öÅжÏÊÇ·ñ£¨¼°ÈçºÎ£©»ñÈ¡ÏûÏ¢£¬ÊÇ·ñ£¨¼°ÈçºÎ£©Ö´ÐвÙ×÷²¢·µ»Ø½á¹û£¬±»µ÷ÓÃÕß¿ÉÒÔ×ÔÐоö¶¨¸ÃÈçºÎ²Ù×÷£¬±ÈÈç¿ÉÒÔÅú´¦Àí¡£Òò´Ë¶ÔÓÚ²¢·¢´¦ÀíÄÜÁ¦½ÏÈõµÄÓ¦Ó㨱»µ÷ÓÃÕߣ©Ó¦²ÉÓÃÒì²½·½Ê½Ö÷¶¯½ÓÊÕÏûÏ¢£¬²¢Ö÷¶¯´´½¨»á»°·µ»Ø´¦Àí½á¹ûÏûÏ¢£¬²¢¸ù¾Ýʵ¼ÊÇé¿ö¾ö¶¨ÈçºÎ´¦Àí¼°·µ»Ø½á¹û£¨±ÈÈç¿É²ÉÓÃÅú´¦Àí¼°·µ»ØµÄ·½Ê½£©£¬Ö®ºóÇëÇ󷢯ðÕßͨ¹ýн¨»á»°ÔÚ±¾µØ»º´æ»ò±¾µØÊý¾Ý¿âÖлñÈ¡·µ»Ø½á¹û£¬ÕæÕýʵÏÖÓ¦ÓüäµÄ½âñî¡£Òì²½ÏûÏ¢Á÷ת¼Ü¹¹Í¼ÈçÏ£º

3. ¿çÖÐÐÄÏûϢʱÐòͼ

3.1¿çÖÐÐÄÒì²½ÏûÏ¢´¦ÀíʱÐòͼһ

Òì²½ÏûÏ¢½á¹û£¬Í¨¹ýн¨»á»°·µ»Ø¡£Éú²úÕß·¢ËÍÏûÏ¢ºó¹Ø±Õ»á»°£¬ÎÞÐèµÈ´ý¡£ÍêÈ«µÄÒì²½Á÷³ÌÎÞÐè·µ»Ø½á¹ûÏûÏ¢£¬Óû§Í¨¹ý·¢ÆðеIJéѯÇëÇó£¬Í¨¹ý±¾µØ»º´æ»ò±¾µØÊý¾Ý¿â»ñµÃ½á¹û¡£

3.2¿çÖÐÐÄÒì²½ÏûÏ¢´¦ÀíʱÐòͼ¶þ

ÔÚijЩÏîĿʵ¼ÊʹÓÃÖУ¬Òì²½»á»°²»»áÁ¢¼´¹Ø±Õ¶øÊǵȴý½á¹û£¬±»µ÷ÓÃÕßÖ´ÐÐÇëÇóºó½«½á¹û°´ÕÕÒì²½ÏûÏ¢·¢ËÍÁ÷³ÌÖ÷¶¯·¢ËÍ»ØÈ¥¡£»á»°Í¨¹ýÂÖѯRedis½á¹û»º´æ£¬¸ù¾ÝSessionΨһ±êʶ·ûÅжÏÊÇ·ñ´æÔڸûỰµÄ·µ»Ø½á¹û£¬»ñµÃ½á¹ûºó½«½á¹û·µ»Ø¸øÇëÇ󷢯ðÕß¡£Òì²½µÄÌØµãÊDZ»µ÷ÓÃÕßÖ÷¶¯»ñÈ¡ÏûÏ¢£¬²¢Ö÷¶¯Í¨¹ýÆäËû¶ÓÁз¢Ëͽá¹ûÏûÏ¢£¬Õâʱ±»µ÷ÓÃÕß¿ÉÒÔ¸ù¾Ý×Ô¼ºµÄ״̬ºÍ´¦ÀíÇé¿öÅжÏÊÇ·ñ£¨¼°ÈçºÎ£©»ñÈ¡ÏûÏ¢£¬ÊÇ·ñ£¨¼°ÈçºÎ£©Ö´ÐвÙ×÷²¢·µ»Ø½á¹û£¬±»µ÷ÓÃÕß¿ÉÒÔ×ÔÐоö¶¨¸ÃÈçºÎ²Ù×÷£¬±ÈÈç¿ÉÒÔÅú´¦Àí¡£Òò´Ë²¢·¢´¦ÀíÄÜÁ¦½ÏÈõµÄÓ¦ÓÃÓ¦²ÉÓøÃÒì²½·½Ê½Ö÷¶¯´¦ÀíÏûÏ¢£¬²¢ÇÒÇëÇ󷢯ðÕßͨ¹ýн¨»á»°ÔÚ±¾µØ»º´æ»ò±¾µØÊý¾Ý¿âÖлñÈ¡½á¹û£¬ÕæÕýʵÏÖÓ¦ÓüäµÄ½âñî¡£

3.3¿çÖÐÐÄͬ²½ÏûÏ¢´¦ÀíʱÐòͼһ

»á»°·¢³öÒì²½ÏûÏ¢ºó£¬»á»°×èÈû£¬Ñ­»·½ÓÊÕTopic Response ¶ÓÁеĹ㲥ÏûÏ¢£¬Í¨¹ýSession Ψһ±êʶ·ûÅжÏÿ´ÎÊÕµ½µÄTopic¶©ÔÄÏûÏ¢ÊÇ·ñΪ¸Ã»á»°µÄÇëÇó½á¹ûÏûÏ¢£¬Êǵϰ·µ»Ø¸øÓ¦Ó㬷ñÔòºöÂÔ¸ÃÏûÏ¢£¬¼ÌÐøÑ­»·½ÓÊչ㲥£¬³¬Ê±ºóÖ±½Ó·µ»Ø³¬Ê±¡£TopicÏûÏ¢²¢²»»áÒòΪµÚÒ»¸öÏûϢûÓб»´¦Àí¶ø·¢Éú×èÈû¡£

ÍêÈ«µÄÒì²½Á÷³ÌÎÞÐè·µ»Ø½á¹ûÏûÏ¢£¬Óû§Í¨¹ý·¢Æð²éѯ£¬Í¨¹ý±¾µØ»º´æ»ò±¾µØÊý¾Ý¿â»ñµÃ½á¹û£»¶ø¿çÖÐÐÄͬ²½Òì²½»¯´¦ÀíÁ÷³ÌÐèÒªµÃµ½Íâϵͳ´¦Àí½á¹û¡£

3.4¿çÖÐÐÄͬ²½ÏûÏ¢´¦ÀíʱÐòͼ¶þ£¨Ê¹ÓÃÁÙʱ¶ÓÁУ©

ͬ²½ÏûÏ¢½á¹û£¬Í¨¹ýÁÙʱ¶ÓÁÐÔÚÒ»´Î»á»°Öзµ»Ø£¬ÁÙʱ¶ÓÁÐÖÐÖ»±£´æ±¾´Î»á»°ÖеÄÏûÏ¢¡£Éú²úÕßÐè±£³Ö»á»°£¬µÈ´ý½á¹û·µ»Ø¡£

4. ¸ß¿ÉÓã¨Ö÷´Ó£©Óë¸ºÔØ¾ùºâ¼Ü¹¹Í¼

ÏûÏ¢·¢ËÍÖеĽÓÊÕTopic¶©ÔĽá¹ûÏûÏ¢¶ÓÁÐURLµØÖ·¡¢ÏûÏ¢½ÓÊÕ¶ÓÁÐURLµØÖ·¡¢ÏûÏ¢´úÀíµÄ·¢ËÍÓë½ÓÊÕ¶ÓÁÐURLµØÖ·ÒÔ¼°ÏûϢת·¢Æ÷·¢Ë͵ÄTopic½á¹ûÏûÏ¢¶ÓÁÐURLµØÖ·£¬¾ùÐèÉèÖÃΪFailover µØÖ·¡£ÒòΪÏûÏ¢¶ÓÁÐ×é¼þActiveMQÊÇÉèÖÃΪÖ÷´ÓµÄ£¬Òò´ËÈκÎ×é¼þÁ¬½ÓÏûÏ¢¶ÓÁеÄURLµØÖ·¾ùÐèÅäÖÃΪÖ÷´ÓFailoverµØÖ·¡£

<broker xmlns="http://activemq.apache.org/schema/core" 
brokerName="localhost" dataDirectory="${activemq.data}"
advisorySupport="false">

5. ÏûÏ¢¶ÓÁÐ×é¼þActiveMQÅäÖÃ

ͨ¹ýÐÞ¸ÄÏûÏ¢¶ÓÁÐ×é¼þActiveMQµÄÅäÖÃÎļþactivemq.xml£¬ÒÔ¡°Ð§ÂÊÓÅÏÈ¡±µÄÔ­Ôòµ÷ÕûÏà¹Ø²ÎÊý£¬ÅäÖÃ˵Ã÷ÈçÏ£º

5.1 ActiveMQÏûϢ֪ͨÅäÖÃ

ÏûϢ֪ͨʵÏÖÁËActiveMQµÄBrokerÉϸ÷ÖÖ²Ù×÷µÄ¼Ç¼¸ú×ÙºÍ֪ͨ¡£µ«ÊÇÔÚʹÓÃÁÙʱ¶ÓÁÐʵÏÖͬ²½ÏûϢʱÎÒÃÇ·¢ÏÖActiveMQ²úÉúÁË´óÁ¿advisory֪ͨÏûÏ¢£¬²¢ÇÒÕâЩÏûÏ¢·´¸´ÔÚÍøÂçÖд«Êä¡£ÕâÓпÉÄÜÓëActiveMQ ͬ²½ÏûÏ¢ACK»úÖÆÓйء£

È¡ÏûÏûϢ֪ͨµÄÅäÖ÷½·¨£¬ÔÚÅäÖÃÎļþÖÐÔö¼ÓÈçÏÂÅäÖãº

<broker xmlns="http://activemq.apache.org/schema/core" 
brokerName="localhost" dataDirectory="${activemq.data}" advisorySupport="false">

5.2ɾ³ý²»»î¶¯µÄ¶ÓÁÐÅäÖÃ

ActiveMQµÄQueueÔÚ²»Ê¹ÓÃÖ®ºó£¬¿ÉÒÔͨ¹ýweb¿ØÖÆÌ¨»òÊÇJMX·½Ê½À´É¾³ýµô¡£Ò²¿ÉÒÔͨ¹ýÅäÖã¬Ê¹µÃBroker¿ÉÒÔ×Ô¶¯Ì½²âµ½ÎÞÓõĶÓÁУ¨Ò»¶¨Ê±¼äÄÚΪ¿ÕµÄ¶ÓÁУ©²¢É¾³ýµô£¬»ØÊÕÏìÓ¦×ÊÔ´¡£ÓÉÓÚActiveMQʹÓÃʱ×Ô¶¯´´½¨Destination£¬²¢ÇÒĬÈÏÇé¿öϲ»»áɾ³ýµô£¬ÕâÖÖÖ»Ôö¼Ó²»¼õÉÙ£¬µ¼ÖÂÔÚqueue´´½¨Æµ·±µÄÇé¿öÏ£¬±¾¹¦Äܷdz£ÓÐÓá£

ÅäÖÃÈçÏ£º

<broker xmlns="http://activemq.apache.org/schema/core" 
schedulePeriodForDestinationPurge="10000" advisorySupport="false">
<destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry queue=">" gcInactiveDestinations="true" inactiveTimoutBeforeGC="10000"/>
</policyEntries>
</policyMap>
</destinationPolicy>
</broker>

²ÎÊý˵Ã÷£º

1£© schedulePeriodForDestinationPurge£º10000 ÿʮÃë¼ì²éÒ»´Î£¬

ĬÈÏΪ0£¬´Ë¹¦ÄܹرÕ

2£© gcInactiveDestinations£ºtrue ɾ³ýµô²»»î¶¯¶ÓÁУ¬Ä¬ÈÏΪfalse

3£© inactiveTimoutBeforeGC£º30000 ²»»î¶¯30Ãëºóɾ³ý£¬Ä¬ÈÏΪ60Ãë

5.3ËÀÐŶÓÁÐÅäÖÃ

DLQ-ËÀÐŶÓÁÐ(Dead Letter Queue)ÓÃÀ´±£´æ´¦Àíʧ°Ü»òÕß¹ýÆÚµÄÏûÏ¢¡£³öÏÖÒÔÏÂÇé¿öʱ£¬ÏûÏ¢»á±»ÔÙͶµÝ

1£©A transacted session is used and rollback() is called.

2£©A transacted session is closed before commit is called.

3£©A session is using CLIENT_ACKNOWLEDGE and Session.recover() is called.

µ±Ò»¸öÏûÏ¢±»redelivered³¬¹ýmaximumRedeliveries£¨È±Ê¡Îª6´Î£©´ÎÊýʱ£¬»á¸øbroker·¢ËÍÒ»¸ö"Poison ack"£¬Õâ¸öÏûÏ¢±»ÈÏΪÊÇa poison pill£¬Õâʱbroker»á½«Õâ¸öÏûÏ¢·¢Ë͵½DLQ£¬ÒÔ±ãºóÐø´¦Àí¡£È±Ê¡µÄËÀÐŶÓÁÐÊÇActiveMQ.DLQ£¬Èç¹ûûÓÐÌØ±ðÖ¸¶¨£¬ËÀÐŶ¼»á±»·¢Ë͵½Õâ¸ö¶ÓÁС£È±Ê¡³Ö¾ÃÏûÏ¢¹ýÆÚ£¬»á±»Ë͵½DLQ£¬·Ç³Ö¾ÃÏûÏ¢²»»áË͵½DLQ

ȱʡËùÓжÓÁеÄËÀÐÅÏûÏ¢¶¼±»·¢Ë͵½Í¬Ò»¸öȱʡËÀÐŶÓÁÐ(ActiveMQ.DLQ)£¬²»±ãÓÚ¹ÜÀí¡£¿ÉÒÔͨ¹ýindividualDeadLetterStrategy»òsharedDeadLetterStrategy²ßÂÔÀ´½øÐÐÐ޸ġ£

Éú²ú»·¾³µÄÅäÖÃÈçÏ£º

<policyEntry queue=">">  
<deadLetterStrategy>
<!-- Use the prefix 'DLQ.' for the destination name, and make
the DLQ a queue rather than a topic -->
<individualDeadLetterStrategy queuePrefix="DLQ." useQueueForQueueMessages="true" />
</deadLetterStrategy>
</policyEntry>

queuePrefix:ÉèÖÃËÀÐŶÓÁÐǰ׺

useQueueForQueueMessages: ÉèÖÃʹÓöÓÁб£´æËÀÐÅ£¬»¹¿ÉÒÔÉèÖÃuseQueueForTopicMessages£¬Ê¹ÓÃTopicÀ´±£´æËÀÐÅ

5.4 ÏûÏ¢¶ÓÁÐÊý¹ý¶àÎÊÌâ

ĬÈϵÄÏûÏ¢¶ÓÁÐÅäÖÃÖÐʹÓÃÒ»¸ö¶ÀÁ¢µÄÏ̸߳ºÔð½«ÏûÏ¢´æ´¢ÖеÄÏûÏ¢ÌáÈ¡µ½ÏûÏ¢¶ÓÁÐÖУ¬¶øºóÔÙ±»·Ö·¢µ½¶ÔÆä¸ÐÐËȤµÄÏûÏ¢Ïû·ÑÕß¡£Èç¹ûÓдóÁ¿µÄÏûÏ¢¶ÓÁÐ,½¨Òéͨ¹ýÆôÓÃoptimizeDispatchÕâ¸öÊôÐÔ¸ÄÉÆÕâ¸öÌØÐÔ£¬Ê¾Àý´úÂëÈçÏÂËùʾ£º

<destinationPolicy>  
<policyMap>
<policyEntries>
<policyEntry queue=">" optimizedDispatch="true"/>
</policyEntries>
</policyMap>
</destinationPolicy>

´úÂëÇåµ¥ÖÐʹÓÃͨÅä·û¡°>¡±±íʾ¸ÃÅäÖûáµÝ¹éµÄÓ¦Óõ½ËùÓеÄÏûÏ¢¶ÓÁÐÖС£

6. ×ܽá

6.1Ϊʲô²»ÄÜʹÓÃActiveMQÁÙʱ¶ÓÁÐʵÏÖͬ²½ÏûÏ¢

1£©Ã¿Ò»¸öÏûÏ¢Éú³ÉÒ»¸öÁÙʱ¶ÓÁУ¬ÒÀÈ»ÊDz¢·¢·ÃÎÊûÓвúÉú¡°¶ÓÁС±µÄЧ¹û£»

2£©ÒòΪҪͨ¹ýÁÙʱ¶ÓÁÐά³Öÿһ¸ö»á»°Á¬½Ó²»¶Ï¿ª£¬µ±´óÁ¿»á»°Í¬Ê±µ½À´Ê±»áÔì³ÉÍøÂçÓµ¶Â£¬ÁÙʱ¶ÓÁÐûÓÐÒì²½¿ìËÙ´«µÝÏûÏ¢µÄЧ¹û£»

3£©Í¬Ê±Ò²»áÔì³ÉÒ»´¦¶ÂÈû£¬´¦´¦¶ÂÈûµÄ»ðÉÕÁ¬ÓªµÄЧ¹û¡£

6.2Òì²½ÏûÏ¢µÄÓÅÊÆºÍÌØµã

ËùνÒì²½´«Ê䣬¾ÍÊǵ±ÎÒ½«ÏûÏ¢´«µÝ¸øÄãºó£¬¸ÃÏûÏ¢¾ÍÓëÎÒÎÞ¹ØÁË£¬ÏûÏ¢ÔÚ²»Í¬Ó¦ÓûòÉ豸֮¼ä´«µÝ£¬µ«Ó¦ÓûòÉ豸±Ë´Ë²¢²»ÐèÒª¹ØÁª£¨ÔÚÒ»´Î»á»°¼ä½¨Á¢³¤Á¬½Ó£©£¬¼´ÈÃÏûϢͨ¹ý²»Í¬»á»°ÔÚÍøÂçÖнøÐжÌÁ¬½Ó¿ìËÙ´«µÝ£¬ÊµÏÖÓ¦ÓûòÉ豸֮¼äµÄ½âñî¡£Òì²½´«ÊäµÄÌØÕ÷ÊǻỰ²ã²ÉÓöÌÁ¬½Ó£¬ÍøÂç²ã¸ü¼ÓÎȶ¨¡£

Òì²½´«ÊäµÄ¹Ø¼üÔÚÓÚ£ºÏûÏ¢´«µÝµÄËÙ¶È¡£ÏûÏ¢´«ÊäµÄËÙ¶ÈÔ½¿ì£¬»á»°Á¬½ÓµÄʱ¼äÒ²¾ÍÔ½¶Ì£¬ÏµÍ³¸ü¼ÓÎȶ¨£¨²»»áÒòΪÊý¾Ý×èÈûÔì³É³¬Ê±¡¢ÍøÂç×èÈû¡¢ÄÚ´æÒç³öµÈÎÊÌ⣩£¬ÏµÍ³µÄЧÂʸü¸ß£¬¾ÍÏñÈËÌåµÄѪҺѭ»·£¨Ìá¸ßѪҺѭ»·µÄËٶȵĹؼüÔÚÓÚ£¬Ò»ÊÇÍÆ¶¯ÑªÒºÔ˶¯µÄ¡°Á¦¡±Òª×㣬¶þÊÇѪ֬ҪµÍ¼õÉÙ×èÁ¦£©¡£Òò´Ë¿ÉÒÔ˵Ìá¸ß»¥ÁªÍøÓ¦ÓÃÎȶ¨ÐÔµÄÒª¾÷ÔÚÓÚ£º²»¶ÏÌá¸ßÊý¾Ý´«ÊäµÄËÙ¶È¡£ÔÚ´ó²¢·¢µÄÇé¿öÏÂÒª×öµ½ÕâÒ»µã£¬Ò»ÊÇÒª²ÉÓÃÒì²½·½Ê½Ê¹ÓöÌÁ¬½Ó´«Ê䣬Èç¹û»á»°Á¬½Ó³¤Ê±¼ä²»¶Ï¿ª£¨³¤Á¬½Ó£©£¬µ±´óÁ¿»á»°Í¬Ê±µ½À´Ê±»áÔì³ÉÍøÂçÓµ¶Â£»¶þÊǶԴ«ÊäÊý¾Ý¾¡¿ÉÄܵÄѹËõ£»ÈýÊÇÌá¸ßÊý¾Ý´¦ÀíµÄÄÜÁ¦¡£

»¥ÁªÍø¿ª·¢ÎÞСÊ£¬ÒòΪ»¥ÁªÍøÓ¦ÓÃÒªÃæ¶Ôº£Á¿ÐÅÏ¢£¬Ò»¸öССµÄÎÊÌâÒ²Äܱ»ÎÞÏ޷Ŵ󣬾ÍÏñÍôÑóÖеĺûµûЧӦ¡£Ò»¸ö»¥ÁªÍøÓ¦Óã¨Èç±¾ÎÄËù˵µÄÏûÏ¢Öмä¼þ£©Óöµ½µÄÎÊÌâ¿ÉÄÜÓëϵͳ¡¢ÍøÂç¡¢Ó¦Óᢼܹ¹¡¢Êý¾ÝµÈ¸÷¸ö²ãÃæµÄÎÊÌâÓйأ¬Ö»ÓÐÄÍÐÄ·¢ÏÖ²¢´¦ÀíºÃÿһ¸öÏà¹Ø²ãÃæµÄÎÊÌ⣬²ÅÄÜ×îÖÕÐγÉÒ»¿îºÃµÄ»¥ÁªÍøÓ¦Óá£Ê±¿ÌÌáÐÑ×Ô¼ºµ±ÏÂÒ»²¨¾ÞÀ˵½À´Ç°ÎÒÃÇ»á×¼±¸µÄ¸üºÃ¡£

×÷Õß¼ò½é£ºÍõ½ð½££¬CSDN²©¿ÍÈÏ֤ר¼Ò£¬¿ªÔ´Êý¾Ý¿âÖмä¼þMycatºËÐÄ¿ª·¢³ÉÔ±¡£´ÓÊÂÈí¼þ¹¤×÷10Äê£¬ÔøÔÚ½ðÈںͻ¥ÁªÍøÐÐÒµÆóÒµµ£Èθ߼¶Èí¼þ¹¤³Ìʦ¡¢ÏîÄ¿¾­Àí¡¢¸ß¼¶DBA¹¤³Ìʦְ룬ÓÐÒøÐÐÐÅÓÿ¨ÏµÍ³ºÍµç×ÓÉÌÎñϵͳ»ù´¡¼Ü¹¹Éè¼ÆÓ뿪·¢¾­Ñé¡£ÏÖÔÚÌìʨ¼¯Íŵ£Èθ߼¶DBA¹¤³Ìʦ£¬¸ºÔð¹«Ë¾µç×ÓÉÌÎñÍøÕ¾Êý¾Ý¿âÉè¼ÆÓëÓÅ»¯¡¢Êý¾Ý¿â¼Ü¹¹¹æ»®¼°²¿Êð¹æ·¶Öƶ¨¡¢ºËÐÄÓ¦ÓõÄÈí¼þÉè¼ÆÓ뿪·¢µÈ¹¤×÷¡£×î½ü´ú±íMYCATÍŶӲμӵÚËĽìÈ«¹ú´´Ð´´Òµ´óÈü£¬²¢ÔÚÌì½òÈüÇø¾öÈüÖÐʤ³ö¡£

 

   
4046 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Óû§¹ÊÊÂÓëÓÃÀý
½»»¥Éè¼ÆÊ¦Ö®¾«Òæ»­²¼Æª
Êý¾Ý·ÖÎöÖ®Óû§»­Ïñ·½·¨Óëʵ¼ù
ÈçºÎ¿ìËÙ½¨Á¢Óû§Ä£ÐÍ£¿
 
Ïà¹ØÎĵµ

Óû§½çÃæÉè¼Æ
¸øÆóÒµ×ö´óÊý¾Ý¾«×¼Óû§»­Ïñ
Óû§ÌåÑéºÍ½»»¥Éè¼Æ
´óÊý¾ÝϵÄÓû§»­Ïñ
Ïà¹Ø¿Î³Ì

Óû§ÌåÑé&½çÃæÉè¼Æ
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
Óû§Ñо¿ÓëÓû§½¨Ä£
Óû§ÌåÑéµÄÈí¼þUIÉè¼Æ×î¼Ñʵ¼ù
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

´ÓÊÖ»úµÇÂ¼Ò³ÃæÉè¼ÆÏëµ½µÄ
ÈçºÎ°ÑÎÞÒâʶÒýÈë½»»¥Éè¼ÆÖÐ
½»»¥Éè¼ÆµÄÕæÏà
µ±ÊÓ¾õÉè¼ÆÊ¦ÓöÉϲúÆ·¾­Àí
ÊÖ»ú½»»¥Éè¼ÆÔ­Ôò
Óû§ÌåÑéÖ®ÍøÒ³°å¿éÉè¼Æ

ÒÔÓû§ÎªÖÐÐĵÄÉè¼Æ
¿ÉÓÃÐÔÆÀ¹À
Desktop¼°Web-basedÊÓ¾õÉè¼Æ
ÈÏÖªÔ­ÀíÓëÉè¼ÆÓ¦ÓÃ
ÊÖ»úÓû§½çÃæÉè¼Æ

±±¾© ÒÔÓû§ÎªÖÐÐĵĽçÃæÉè¼Æ
±±¾© Óû§ÌåÑé& ½çÃæÉè¼Æ
ÉϺ£ »ªÎª Óû§ÌåÑé& ½çÃæÉè¼Æ
ÉîÛÚ Óû§ÌåÑé& ½çÃæÉè¼Æ
°®Á¢ÐÅ ÒÔÓû§ÎªÖÐÐĵÄÉè¼Æ
±±¾© Óû§ÌåÑéÓë½çÃæÉè¼Æ
¸£ÖÝ ÒÔÓû§ÎªÖÐÐĵĽçÃæÉè¼Æ