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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÏûÏ¢¶ÓÁÐ - ÀûÓÃÊÂÎñÏûϢʵÏÖ·Ö²¼Ê½ÊÂÎñ
 
×÷Õߣº¼¼ÊõºÅ-JavaEdge
  3105  次浏览      27
 2020-7-22 
 
±à¼­ÍƼö:
±¾ÎÄÖ÷Òª½éÉÜÁËMQÊÂÎñµÄÒâÒå¡¢·Ö²¼Ê½ÊÂÎñ¡¢ÊÂÎñÏûÏ¢ÊÊÓó¡¾°¡¢MQʵÏÖ·Ö²¼Ê½ÊÂÎñ¡¢RocketMQ·Ö²¼Ê½ÊÂÎñÒÔ¼°°¸Àý
À´×ÔÓÚcsdn,ÓÉ»ðÁú¹ûÈí¼þAnna±à¼­¡¢ÍƼö¡£

1 MQÊÂÎñµÄÒâÒå

¡°·¢ÏûÏ¢¡±¹ý³Ì£¬ÍùÍùÊÇΪ֪ͨÁíÍâÒ»¸öϵͳ¸üÐÂÊý¾Ý£¬MQµÄ¡°ÊÂÎñ¡±£¬Ö÷Òª½â¾öÏûÏ¢Éú²úÕߺÍÏûÏ¢Ïû·ÑÕßµÄÊý¾ÝÒ»ÖÂÐÔÎÊÌâ¡£

Óû§ÔÚµçÉÌAPPÉϹºÎïʱ

ÏȰÑÉÌÆ·¼Óµ½¹ºÎï³µ

È»ºó¼¸¼þÉÌÆ·Ò»Æðϵ¥

×îºóÖ§¸¶

Íê³É¹ºÎïÁ÷³Ì£¬¾Í¿ÉÒÔÓä¿ìµØµÈ´ýÊÕ»õ

¸Ã¹ý³ÌÖÐÓиöÐèÓÃMQ¡£

¶©µ¥ÏµÍ³´´½¨¶©µ¥ºó£¬·¢ÏûÏ¢¸ø¹ºÎﳵģ¿é£¬½«ÒÑϵ¥ÉÌÆ·´Ó¹ºÎﳵɾ³ý¡£

´Ó¹ºÎﳵɾ³ýÒÑϵ¥ÉÌÆ·²½Ö裬²¢·ÇÓû§Ïµ¥Ö§¸¶Õâ¸öÖ÷ÒªÁ÷³ÌµÄ±ØÐè²½Ö裬ËùÒÔʹÓÃMQÒì²½ÇåÀí¹ºÎï³µ¸üºÏÀí¡£

¶©µ¥Ä£¿é´´½¨¶©µ¥µÄ¹ý³Ìʵ¼ÊÖ´ÐÐÁËÁ©²Ù×÷£º

ÔÚ¶©µ¥DB²åÒ»Ìõ¶©µ¥Êý¾Ý£¬ÓÃÀ´´´½¨¶©µ¥

·¢ÏûÏ¢¸øMQ£¬ÏûÏ¢ÄÚÈݼ´¸Õ´´½¨µÄ¶©µ¥

¹ºÎﳵģ¿é¶©ÔÄÏàÓ¦Ö÷Ì⣬½ÓÊÕ¶©µ¥´´½¨µÄÏûÏ¢£¬È»ºóÇåÀí¹ºÎï³µ£¬ÔÚ¹ºÎï³µÖÐɾ³ý¶©µ¥ÖеÄÉÌÆ·¡£

·Ö²¼Ê½ÏµÄÕâЩ²½Öè¶¼ÓÐʧ°Ü¿ÉÄÜÐÔ£¬Èô²»×ö´¦Àí£¬¾Í¿ÉÄܵ¼Ö¶©µ¥Êý¾ÝÓ빺Îï³µÊý¾Ý²»Ò»Ö£º

´´½¨Á˶©µ¥£¬Ã»ÓÐÇåÀí¹ºÎï³µ

¶©µ¥Ã»´´½¨³É¹¦£¬¹ºÎï³µÀïÃæµÄÉÌÆ·È´±»ÇåÁË

Òò´ËÎÊÌâ

ÔÚÈÎÒâ²½Öè¶¼¿ÉÄÜʧ°Üʱ£¬Òª±£Ö¤¶©µ¥DBºÍ¹ºÎï³µDBµÄÊý¾ÝÒ»ÖÂÐÔ¡£

¹ºÎﳵϵͳÊÕµ½¶©µ¥´´½¨³É¹¦ÏûÏ¢ÇåÀí¹ºÎï³µ²Ù×÷£¬Ö»Òª³É¹¦Ö´ÐйºÎï³µÇåÀíºóÔÙÌá½»Ïû·ÑÈ·Èϼ´¿É

Èç¹ûʧ°Ü£¬ÓÉÓÚûÓÐÌá½»Ïû·ÑÈ·ÈÏ£¬MQ»á×Ô¶¯ÖØÊÔ¡£

ÎÊÌâ¹Ø¼üµãÔÚ¶©µ¥ÏµÍ³£¬´´½¨¶©µ¥ºÍ·¢ËÍÏûÏ¢²»ÔÊÐíÒ»¸ö³É¹¦¶øÁíÒ»¸öʧ°Ü¡£

Õâ¾ÍÊÇÊÂÎñÎÊÌâ¡£

·Ö²¼Ê½ÊÂÎñ

µ¥Ìå¹ØÏµÐÍÊý¾Ý¿â¶¼ÍêÕûµÄʵÏÖACID£¬µ«¶Ô·Ö²¼Ê½ÏµÍ³

ÑϸñʵÏÖACID¼¸ºõ²»¿ÉÄÜ

»òÕß˵ʵÏÖ´ú¼ÛÌ«´ó£¬´óµ½ÎÞ·¨½ÓÊÜ

·Ö²¼Ê½ÏµÍ³ÔÚ±£Ö¤¿ÉÓÃÐԺͲ»ÑÏÖØÎþÉüÐÔÄܵÄǰÌáÏ£¬ÒªÊµÏÖÊý¾ÝÒ»ÖÂÐԷdz£À§ÄÑ£¬ËùÒÔ³öÏֺܶࡰ²ÐѪ°æ¡±Ò»ÖÂÐÔ£¬±ÈÈç˳ÐòÒ»ÖÂÐÔ¡¢×îÖÕÒ»ÖÂÐÔ¡£

ËùÒÔ·Ö²¼Ê½ÊÂÎñ¸ü¶àÊÇÔÚ·Ö²¼Ê½ÏµÍ³ÖÐÊÂÎñµÄ²»ÍêÕûʵÏÖ¡£ÔÚ²»Í¬³¡¾°Óв»Í¬ÊµÏÖ£¬¶¼ÊÇͨ¹ýһЩÍ×Э½â¾öÎÊÌâ¡£

³£¼û·Ö²¼Ê½ÊÂÎñʵÏÖÓÐ2PC¡¢TCCºÍÊÂÎñÏûÏ¢¡£

ÿÖÖʵÏÖ¶¼ÓÐÆäÌØ¶¨µÄʹÓó¡¾°£¬Ò²Óи÷×ÔÎÊÌ⣬¶¼²»ÊÇÍêÃÀ·½°¸¡£

ÊÂÎñÏûÏ¢ÊÊÓó¡¾°

Ö÷ÒªÊÇÄÇЩÐèÒªÒì²½¸üÐÂÊý¾Ý£¬²¢ÇÒ¶ÔÊý¾ÝʵʱÐÔÒªÇ󲻸ߡ£

±ÈÈçÔÚ´´½¨¶©µ¥ºó£¬Èç¹û³öÏÖ¶ÌÔݼ¸Ã룬¹ºÎï³µÉÌÆ·Ã»±»¼°Ê±Çå¿Õ£¬Ò²²»ÊÇÍêÈ«²»¿É½ÓÊÜ£¬Ö»Òª×îÖÕ¹ºÎï³µµÄÊý¾ÝºÍ¶©µ¥Êý¾Ý±£³ÖÒ»Ö¡£

MQʵÏÖ·Ö²¼Ê½ÊÂÎñ

ÊÂÎñÏûÏ¢ÐèÒªMQÌṩÏàÓ¦¹¦ÄܲÅÄÜʵÏÖ£¬KafkaºÍRocketMQ¶¼ÌṩÊÂÎñÏà¹Ø¹¦ÄÜ¡£

µÚ¶þ²½·¢ËͰëÏûÏ¢µÚÈý²½´´½¨¶©µ¥£¬Õâ2¸ö˳Ðò·´Ò»ÏÂÊǵȼ۵쬼´ÏÈ´´½¨¶©µ¥ÔÚ·¢ËͰëÏûÏ¢¡£

°ëÏûÏ¢²¢·ÇÏûÏ¢ÄÚÈݲ»ÍêÕû£¬°üº¬µÄ¾ÍÊÇÍêÕûµÄÏûÏ¢ÄÚÈÝ¡£

ºÍÆÕͨÏûÏ¢Î¨Ò»Çø±ð

ÔÚÊÂÎñÌύǰ£¬¶ÔÏû·ÑÕߣ¬¸ÃÏûÏ¢²»¿É¼û¡£Õâ¸ö°ëÏûÏ¢£¬²»ÊǺÍÉú»îÖеġ°½»¶¨½ð¡±ÓеãÀàËÆ¡£ÆäʵÊǽ»È«¿î£¬²»·¢»õ¡£

°ëÏûÏ¢·¢³É¹¦ºó£¬¶©µ¥ÏµÍ³¾Í¿ÉÖ´Ðб¾µØÊÂÎñ£º

ÔÚ¶©µ¥¿â´´½¨Ò»Ìõ¶©µ¥¼Ç¼£¬²¢Ìá½»¶©µ¥¿âµÄÊý¾Ý¿âÊÂÎñ¡£

È»ºó¸ù¾Ý±¾µØÊÂÎñÖ´Ðнá¹û¾ö¶¨Ìá½»»òÕ߻عöÊÂÎñÏûÏ¢¡£

¶©µ¥´´½¨³É¹¦£¬Ìá½»ÊÂÎñÏûÏ¢£¬¹ºÎﳵϵͳ¼´¿ÉÏû·Ñµ½¸ÃÏûÏ¢£¬¼ÌÐøºóÐøÁ÷³Ì

¶©µ¥´´½¨Ê§°Ü£¬»Ø¹öÊÂÎñÏûÏ¢£¬¹ºÎﳵϵͳ²»»áÊÕµ½¸ÃÏûÏ¢

Õâ¾Í»ù±¾ÊµÏÖ¡°¶¼³É¹¦/ʧ°Ü¡±µÄÒ»ÖÂÐÔÒªÇó¡£

µ«ÕâʵÏÖ¹ý³Ì£¬ÓиöÎÊÌâûÓнâ¾ö£ºÈç¹ûÔÚµÚ4²½Ìá½»ÊÂÎñÏûϢʱʧ°ÜÔõô°ì£¿

KafkaºÍRocketMQ¸øÁ˲»Í¬½â¾ö·½°¸¡£

Kafka¼òµ¥´Ö±©£¬Ö±½ÓÅ×Òì³££¬ÈÃÓû§×ÔÐд¦Àí

ÎÒÃÇ¿ÉÔÚÒµÎñ´úÂë·´¸´ÖØÊÔÌá½»£¬Ö±µ½Ìá½»³É¹¦

»òÕßɾ³ý֮ǰ´´½¨µÄ¶©µ¥½øÐв¹³¥¡£

ÔÚÎÒÃÇÕâÀïÀý×ÓÀïÃæ£¬±¾µØÊÂÎñ¾ÍÊÇ´´½¨¶©µ¥Õâ¸öÊý¾Ý¿âÊÂÎñ¡£

ÈôMQ²»Ö§³Ö°ëÏûÏ¢£¬ÊÇ·ñÓÐÆäËûµÄ½â¾ö·½°¸

ÀûÓÃÊý¾Ý¿âµÄÊÂÎñÏûÏ¢±í¡£

°ÑÏûÏ¢ÐÅÏ¢µÄ¿ìÕպͶÔÒµÎñÊý¾ÝµÄ²Ù×÷×÷ΪÊý¾Ý¿âÊÂÎñ²Ù×÷Êý¾Ý¿â£¬²Ù×÷³É¹¦ºó´ÓÊý¾Ý¿â¶ÁÈ¡ÏûÏ¢ÐÅÏ¢·¢Ë͸øbroker£¬ÊÕµ½·¢Ëͳɹ¦µÄ»ØÖ´ºóɾ³ýÊý¾Ý¿âÖеÄÏûÏ¢¿ìÕÕ¡£ÎÒ¸öÈ˾õµÃÕâÖÖ·½°¸ÔÚ²»Ö§³Ö°ëÏûÏ¢µÄ¶ÓÁз½°¸ÀïÒ²ÊÇÒ»ÖÖÑ¡Ôñ£¬²»ÖªµÀÄú¾õµÃÕâÖÖʵÏÖ·½°¸ÓÐûÓÐʲôÎÊÌâ¡£

Èç¹ûÓиöÉú²úÕߺÍÏû·ÑÕß¶¼¿É·ÃÎÊ£¬²¢ÇÒÐÔÄÜ»¹²»´íµÄÊý¾Ý¿â£¬¿Ï¶¨Ê¹ÓÃÕâ¸öÊý¾Ý¿âʵÏÖÊÂÎñ½ÏºÃ¡£

È»¶ø´ó²¿·ÖÊÂÎñÏûϢʹÓõij¡¾°ÊÇ

ûÓÐÕâÑùµÄÊý¾Ý¿â

»òÓÉÓÚÉè¼Æ¡¢°²È«»òÕßÍøÂçÔ­Òò£¬Éú²úÕßÏû·ÑÕß²»Äܹ²ÏíÊý¾Ý¿â

»òÊý¾Ý¿âµÄÐÔÄÜ´ï²»µ½ÒªÇó

Èç¹ûÏÈ´´½¨¶©µ¥£¬µ±Ç°·þÎñÓÉÓÚ²»¿É¿¹¾ÜÒòËØ²»ÄÜÕý³£¹¤×÷£¬Ã»¸ø¹ºÎﳵϵͳ·¢ËÍÏûÏ¢£¬ÕâÖÖÇé¿ö¼Ó¾Í»á³öÏÖ£º¶©µ¥ÒÑ´´½¨ÇÒ¹ºÎﳵûÓÐÇå¿Õ¡£

¶ø·¢ËͰëÏûÏ¢£¬¿Éͨ¹ý¶¨ÆÚ²éѯÊÂÎñ״̬Ȼºó¸ù¾ÝÈ»ºó¾ßÌåµÄÒµÎñ»Ø¹ö²Ù×÷»òÕßÖØÐ·¢ËÍÏûÏ¢£¨±£³ÖÒµÎñµÄÃݵÈÐÔ£©¡£

Ïû·Ñ¶Ë×öÃݵȴ¦ÀíÀ´±£ÕÏÏûÏ¢²»»áÖØ¸´Ïû·Ñ

¿ÉÒÔ²ÉÓÃ״̬»úµÄ·½Ê½

ÏûÏ¢Êý¾ÝΨһ¼ü+redis setnxÀ´±£ÕÏ

±¾µØÏûÏ¢±í£¬ÒªÈ·±£²åÈë±¾µØÏûÏ¢±íºÍÖ´ÐÐÏûÏ¢Ïû·ÑÒµÎñÔÚͬһÊÂÎñÀï

RocketMQ·Ö²¼Ê½ÊÂÎñ

RocketMQÊÂÎñʵÏÖÔö¼ÓÁËÊÂÎñ·´²é»úÖÆÀ´½â¾öÊÂÎñÏûÏ¢Ìύʧ°ÜµÄÎÊÌâ¡£

Èç¹ûProducer£¨¼´¶©µ¥Ä£¿é£©£¬ÔÚÌá½»»ò»Ø¹öÊÂÎñÏûϢʱ·¢ÉúÍøÂçÒì³££¬BrokerûÓÐÊÕµ½Ìá½»»ò»Ø¹öÇëÇó£¬Broker»á¶¨ÆÚÈ¥Producer·´²é¸ÃÊÂÎñ¶ÔÓ¦µÄ±¾µØÊÂÎñµÄ״̬£¬È»ºó¸ù¾Ý·´²é½á¹û¾ö¶¨Ìá½»»òÕ߻عö¸ÃÊÂÎñ¡£

ÒªÖ§³ÖÊÂÎñ·´²é»úÖÆ£¬ÒµÎñ´úÂëÐèʵÏÖÒ»¸ö·´²é±¾µØÊÂÎñ״̬µÄ½Ó¿Ú£¬¸æÖªRocketMQ±¾µØÊÂÎñÊdzɹ¦»¹ÊÇʧ°Ü¡£

Èç¹û·´²éµÄ·þÎñÆ÷Êý¾Ý²»Ò»Ö£¬ËüÊÇÈÏΪ±¾µØÊÂÎñʧ°Ü»¹ÊǼÌÐø¶à´Î·´²éÄØ£¿

·´²é½Ó¿ÚµÄ¶¨Ò壬Ëü¼ì²éµÄÊDZ¾µØÊÂÎñ£¨ÔÚÎÒÃÇÕâ¸öÀý×ÓÀïÃæ¾ÍÊÇÊý¾Ý¿âÊÂÎñ£©ÓÐûÓÐÖ´Ðгɹ¦£¬²¢²»±È½ÏÊý¾ÝÊÇ·ñÒ»Ö¡£

¸ÃÀýÖз´²é±¾µØÊÂÎñÂß¼­¼òµ¥£¬Ö»Òª¸ù¾ÝÏûÏ¢Öж©µ¥ID£¬ÔÚ¶©µ¥¿âÖвéѯ¸Ã¶©µ¥ÊÇ·ñ´æÔÚ£¬Èô¶©µ¥´æÔÚÔò·µ»Ø³É¹¦£¬·ñÔò·µ»ØÊ§°Ü¡£

RocketMQ»á×Ô¶¯¸ù¾ÝÊÂÎñ·´²éµÄ½á¹ûÌá½»»òÕ߻عöÊÂÎñÏûÏ¢¡£

·´²é±¾µØÊÂÎñµÄʵÏÖ²¢²»ÒÀÀµÏûÏ¢µÄ·¢ËÍ·½£¬¼´¶©µ¥·þÎñµÄij½ÚµãµÄÈκÎÊý¾Ý¡£

ÕâÖÖÇé¿öÏ£¬¼´Ê¹·¢ËÍÊÂÎñÏûÏ¢µÄ¶©µ¥·þÎñ½Úµãå´»ú£¬RocketMQÒÀÈ»¿Éͨ¹ýÆäËû¶©µ¥·þÎñ½ÚµãÖ´Ðз´²é£¬È·±£ÊÂÎñÍêÕûÐÔ¡£

RocketMQÊÂÎñÏûÏ¢Á÷³Ìͼ

Èç¹û±¾µØÊÂÎñÌύʧ°Ü£¬ÒÑ·¢³öÈ¥µÄÏûÏ¢ÊÇÎÞ·¨³·»ØµÄ£¬»áµ¼ÖÂÊý¾Ý²»Ò»Ö¡£

Èô²åÈëÏûÏ¢±í³É¹¦ºó£¬Ïû·Ñ·½±ÀÀ£µ¼ÖÂÏû·Ñʧ°Ü

ÒòΪÏû·Ñʧ°Ü£¬»á×Ô¶¯ÖØÊÔ£¬ËùÒÔ²»»á¶ªÏûÏ¢£¬µ«¿ÉÄÜÖØ¸´Ïû·Ñ¡£

»Ø²éʱ¼äºÍ´ÎÊýÔõôÉèÖÃ

Èç¹û·¢²¼Õß±¾µØÊÂÎñÖ´ÐÐÌ«¾Ã»¹Ã»Ö´ÐÐÍ꣬ÏûÏ¢ÖÐÐľÍÀ´»Ø²éÊDz»ÊÇÓÐÎÊÌ⣬ËùÒÔÓ¦¿ÉÒÔ°Ñ·¢ÏûÏ¢·Å±¾µØÊÂÎñµÄºóÃæ°É£¬ÁíÍâ´ÎÊý¶¨ÒåÒ²ÊǾ­ÑéÖµ°É

·´²éÒ»°ãÊǶ¨Ò»¸öÊÂÎñ³¬Ê±Ê±¼ä£¬³¬Ê±Ö®Ç°»á²»¶¨ÆÚ»Ø²é¡£

ÊÂÎñ»Ø²é¸Ð¾õÐèÒªÌØ¶¨ÒµÎñ×Ô¼ºÊµÏÖ£¬ÏûÏ¢ÌåÀïÐèÒª´ø»Ø²éµÄ²ÎÊýÀ´Åжϱ¾µØÊÂÎñ½á¹û

ÓÐÎÞͨÓÃ×ö·¨£¬±ÈÈç·¢ÏûϢǰ²úÉúΨһidдÈëÊý¾Ý¿â£¬ºóÃæ»Ø²éÓÃÕâ¸öidÀ´²éÊÂÎñ½á¹û¾ÍºÃÁË£¬¶øÎÞÐè¾ßÌåÂß¼­×Ô¼º×ö

Ŀǰ»¹Ã»ÓÐͨÓõÄ×ö·¨£¬ÐèÒªÒµÎñ·½×Ô¼ºÊµÏÖ¡£

RocketMQÊÂÎñÏûÏ¢´úÂëʵÏÖ±¾°¸Àý

´úÂëʵÏÖ¶©µ¥Ïµ¥£º

1.Ê×ÏÈͨ¹ýproducer.sendMessageInTransaction()·½·¨·¢°ëÏûÏ¢¸øMQ

2.´Ëʱ»áÔÚTransactionListenerÖеÄexecuteLocalTransaction()·½·¨×èÈû£¬È»ºóÔÚÕâ¸ö·½·¨ÀïÃæ½øÐж©µ¥´´½¨²¢Ìá½»±¾µØÊÂÎñ

Èç¹ûcommit³É¹¦£¬Ôò·µ»ØCOMMIT״̬

·ñÔòÊÇROLLBACK״̬£¬Èç¹ûÕý³£·µ»ØCOMMIT»òÕßROLLBACKµÄ»°£¬²»»á´æÔÚµÚ3²½µÄ·´²éÇé¿ö¡£

3.Èç¹ûÉÏÃæµÄ±¾µØÊÂÎñÌá½»³É¹¦ÒԺ󣬴˽ڵãͻȻ¶Ïµç£¬ÄÇôcheckLocalTransaction()·´²é·½·¨¾Í»áÔÚij¸öʱºò±»MQµ÷Ó㬴˷½·¨»á¸ù¾ÝÏûÏ¢ÖеĶ©µ¥ºÅÈ¥Êý¾Ý¿âÈ·È϶©µ¥ÊÇ·ñ´æÔÚ£¬´æÔھͷµ»ØCOMMIT״̬£¬·ñÔòÊÇROLLBACK״̬¡£

¹ºÎï³µÔÚÁíһģ¿é£¬Ö»ÒªÊÕµ½MQÏûÏ¢¾Í½«±¾´Î¶©µ¥µÄÉÌÆ·´Ó¹ºÎï³µÖÐɾ³ý¼´¿É¡£

RocketMQÊÂÎñÏûÏ¢ÍêÕûʵÏÖACIDÁËÂð

A:±¾µØÊÂÎñµÄ²Ù×÷1£¬ÓëÍùMQÖÐÉú²úÏûÏ¢µÄ²Ù×÷2£¬ÊÇÁ½¸ö·ÖÀë²Ù×÷£¬²»·ûºÏÔ­×ÓÐÔ

C:ÓÉÓÚ²Ù×÷MQÊôÒì²½£¬ÔÚÊý¾ÝÒ»ÖÂÐÔÉÏ£¬Ö»Äܱ£Ö¤×îÖÕÒ»ÖÂÐÔ¡£

¶ÔʱЧÐÔÒªÇóºÜ¸ßϵͳ£¬ÊÂÎñÏûÏ¢²¢·ÇÊý¾ÝÒ»ÖÂ

µ«¶ÔʱЧÐÔÒªÇ󲻸ßϵͳ£¬¾ÍÊÇÊý¾ÝÒ»ÖµÄ

ÐèÒª½áºÏÒµÎñÐèÒª¿´ÎÊÌâ

I£ºÓÉÓÚÊÂÎñÏûÏ¢·ÖÁ½²½²Ù×÷£¬±¾µØÊÂÎñÌá½»ºó£¬±ðµÄÊÂÎñÏûÏ¢¾ÍÒѾ­¿É¿´µ½Ìá½»µÄÏûÏ¢¡£ËùÒÔ£¬²»·ûºÏ¸ôÀëÐÔ

D£ºrocketMqÉÏÖ§³ÖÊÂÎïµÄ·´²é»úÖÆ£¬µ«¡°°ëÏûÏ¢¡±ÊÇ´æ´¢ÔÚ´ÅÅÌÖУ¬»¹ÊÇÄÚ´æÄØ£¿

Èô´æ´¢ÔÚ´ÅÅÌÖУ¬ÄǾÍÖ§³Ö³Ö¾ÃÐÔ£¬¼´Ê¹ÊÂÎïÏûÏ¢Ìá½»ºó£¬·¢Éú·þÎñͻȻ崻úÒ²²»ÊÜÓ°Ïì

Èô´æ´¢ÔÚÄڴ棬ÔòÎÞ·¨±£Ö¤³Ö¾ÃÐÔ

rocketmqʵÏÖ·Ö²¼Ê½ÊÂÎñ£¬Ê¹ÓÃÁ½½×¶ÎÌá½»£¬ºÍmysqlдredo logºÍbinlogÈÕÖ¾µÄÁ½½×¶ÎÌá½»ÀàËÆ¡£ÒÔ¶©µ¥ÎªÀý

Ìá½»¶©µ¥ÏûÏ¢µ½mqÖУ¬µÈ´ýmq»Ø¸´ack£¬ÏûÏ¢Ìá½»³É¹¦£¬µ«ÊÇ´ËʱµÄÏûÏ¢¶ÔÏû·Ñ×é²»¿É¼û£¬¼´halfÏûÏ¢

´Ë½×¶ÎÏñmysqlµÄÒýÇæ²ãдredo logµÄprepare½×¶Î¡£

Ö´Ðб¾µØÊÂÎñ£¬Ö´Ðб¾µØÊÂÎñ³É¹¦

´Ë½×¶ÎÏñmysqlµÄservice²ãдbinlogµÄ½×¶Î£¬Ð´binlog³É¹¦£¬×îºóÌá½»»òÕ߻عö¶ÓÁÐÊÂÎñ¡£

rocketmqΪ·ÀÖ¹commitºÍrollback³¬Ê±»òÕßʧ°Ü£¬²ÉÈ¡»Ø²éµÄ²¹³¥»úÖÆ£¬»Ø²é´ÎÊýĬÈÏ15´Î£¨¸Ð¾õÕâ¸ö»á²»»áµ¼Ö·þÎñ³¬Ê±ÁË£©£¬³¬¹ý»árollback£¬ÓеãÏñmysqlå´»úÖØÆô¸ù¾Ýredo logÖеÄxidÕÒbinlogµÄxidÊÂÎñ£¬Èç¹ûbinlogÈÕÖ¾Ò²ÒѾ­Ð´³É¹¦£¬mysqlÕâ¸öÊÂÎñÒ²»áÌá½»£¬ÒòΪredo logºÍbinlogÕâ¸öÊÂÎñ¶¼Ð´ÍêÕû¡£

ÏûÏ¢¶ÔÏû·ÑÕß²»¿É¼û£¬½«ÆäÏûÏ¢µÄÖ÷ÌâtopicºÍ¶ÓÁÐidÐÞ¸ÄΪhalf topic£¬Ô­ÏȵÄÖ÷ÌâºÍ¶ÓÁÐidÒ²×öΪÏûÏ¢µÄÊôÐÔ£¬Èç¹ûÊÂÎñÌá½»»òÕ߻عö»á½«ÆäÏûÏ¢µÄ¶ÓÁиÄΪԭÏȵĶÓÁС£rocketMq¿ªÆôÈÎÎñ£¬´Óhalf topicÖлñÈ¡ÏûÏ¢£¬µ÷ÓÃÆäÖеÄÉú²úÕߵļàÌý½øÐлزéÊÇ·ñÌá½»»Ø¹ö¡£

rocketmq²ÉÓÃcommitlog´æ·ÅÏûÏ¢£¬Ïû·ÑÕßʹÓÃconsumeQueue¶þ¼¶Ë÷Òý´Ócommitlog»ñÈ¡ÏûϢʵÌåÄÚÈÝ¡£

Àí½âIndex File£ºindexFileµÄ×÷ÓþÍÊǸøcommitlog×öµÄË÷Òý£¬ÌáÉý¶ÁÈ¡ÏûϢʱµÄ²éѯЧÂÊ¡£

»Ø²é½èÖúOP topic½øÐлñÈ¡µ½HalfÏûÏ¢½øÐкóÐøµÄ»Ø²é²Ù×÷¡£

×ܽá

RocketMQÊÂÎñ·´²é»úÖÆÍ¨¹ý¶¨ÆÚ·´²éÊÂÎñ״̬£¬À´²¹³¥Ìá½»ÊÂÎñÏûÏ¢¿ÉÄܳöÏÖµÄͨÐÅʧ°Ü¡£

ÔÚKafkaµÄÊÂÎñ¹¦ÄÜÖУ¬²¢Ã»ÓÐÀàËÆµÄ·´²é»úÖÆ£¬ÐèÒªÓû§×ÔÐÐÈ¥½â¾öÕâ¸öÎÊÌâ¡£

µ«²»´ú±íRocketMQµÄÊÂÎñ¹¦ÄܱÈKafka¸üºÃ£¬Ö»ÄÜ˵ÔÚ¸ÃÀý³¡¾°£¬RocketMQ¸üÊʺϡ£

Kafka¶ÔÊÂÎñµÄ¶¨Ò塢ʵÏÖºÍÊÊÓó¡¾°£¬ºÍRocketMQÓнϴó²îÒì¡£

 

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

ÆóÒµ¼Ü¹¹¡¢TOGAFÓëArchiMate¸ÅÀÀ
¼Ü¹¹Ê¦Ö®Â·-ÈçºÎ×öºÃÒµÎñ½¨Ä££¿
´óÐÍÍøÕ¾µçÉÌÍøÕ¾¼Ü¹¹°¸ÀýºÍ¼¼Êõ¼Ü¹¹µÄʾÀý
ÍêÕûµÄArchimateÊÓµãÖ¸ÄÏ£¨°üÀ¨Ê¾Àý£©
Ïà¹ØÎĵµ

Êý¾ÝÖÐ̨¼¼Êõ¼Ü¹¹·½·¨ÂÛÓëʵ¼ù
ÊÊÓÃArchiMate¡¢EA ºÍ iSpace½øÐÐÆóÒµ¼Ü¹¹½¨Ä£
ZachmanÆóÒµ¼Ü¹¹¿ò¼Ü¼ò½é
ÆóÒµ¼Ü¹¹ÈÃSOAÂ䵨
Ïà¹Ø¿Î³Ì

ÔÆÆ½Ì¨Óë΢·þÎñ¼Ü¹¹Éè¼Æ
ÖÐ̨սÂÔ¡¢ÖÐ̨½¨ÉèÓëÊý×ÖÉÌÒµ
ÒÚ¼¶Óû§¸ß²¢·¢¡¢¸ß¿ÉÓÃϵͳ¼Ü¹¹
¸ß¿ÉÓ÷ֲ¼Ê½¼Ü¹¹Éè¼ÆÓëʵ¼ù
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]
 
×îÐÂÎÄÕÂ
¼Ü¹¹Éè¼Æ-̸̸¼Ü¹¹
ʵÏÖSaaS£¨Èí¼þ¼°·þÎñ£©¼Ü¹¹Èý´ó¼¼ÊõÌôÕ½
µ½µ×ʲôÊÇÊý¾ÝÖÐ̨£¿
ÏìӦʽ¼Ü¹¹¼ò½é
ÒµÎñ¼Ü¹¹¡¢Ó¦Óüܹ¹ÓëÔÆ»ù´¡¼Ü¹¹
×îпγÌ
Èí¼þ¼Ü¹¹Éè¼Æ·½·¨¡¢°¸ÀýÓëʵ¼ù
´Ó´óÐ͵çÉ̼ܹ¹Ñݽø¿´»¥ÁªÍø¸ß¿ÉÓüܹ¹Éè¼Æ
´óÐÍ»¥ÁªÍø¸ß¿ÉÓüܹ¹Éè¼ÆÊµ¼ù
ÆóÒµ¼Ü¹¹Ê¦ (TOGAF¹Ù·½ÈÏÖ¤)
ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ¡ª¸ß¼¶Êµ¼ù
³É¹¦°¸Àý
ijÐÂÄÜÔ´µçÁ¦ÆóÒµ Èí¼þ¼Ü¹¹Éè¼Æ·½·¨¡¢°¸ÀýÓëʵ¼ù
Öк½¹¤ÒµÄ³Ñо¿Ëù ǶÈëʽÈí¼þ¿ª·¢Ö¸ÄÏ
ij¹ìµÀ½»Í¨ÐÐÒµ ǶÈëʽÈí¼þ¸ß¼¶Éè¼ÆÊµ¼ù
±±¾© º½Ìì¿Æ¹¤Ä³×Ó¹«Ë¾ Èí¼þ²âÊԼܹ¹Ê¦
±±¾©Ä³ÁìÏÈÊý×ÖµØÍ¼ ¼Ü¹¹Ê¦£¨Éè¼Æ°¸Àý£©