±à¼ÍƼö: |
±¾ÎĽéÉÜ·ÖΪÁ½µã1.RabbitmgÓÃÓÚ½â¾ö·Ö²¼Ê½ÊÂÎñ±ØÐëÕÆÎÕµÄ5¸öºËÐĸÅÄî
Ò»¿î·Ö²¼Ê½ÏûÏ¢Öмä¼þ£¬»ùÓÚerlangÓïÑÔ¿ª·¢£¬ ¾ß±¸ÓïÑÔ¼¶±ðµÄ¸ß²¢·¢´¦ÀíÄÜÁ¦¡£2¡¢·Ö²¼Ê½ÊÂÎñÎÊÌâ
·Ö²¼Ê½ÊÂÎñÊÇÒ»¸öÒµÎñÎÊÌ⣬²»ÄÜÍÑÀë¾ßÌåµÄ³¡¾°¡£
À´×ÔÓÚ°¢ÀïÔÆ£¬,ÓÉ»ðÁú¹ûÈí¼þAnna±à¼¡¢ÍƼö¡£ |
|
1 ¼«ËÙÁ˽âMQ
½éÉÜRabbitmgÓÃÓÚ½â¾ö·Ö²¼Ê½ÊÂÎñ±ØÐëÕÆÎÕµÄ5¸öºËÐĸÅÄî
Ò»¿î·Ö²¼Ê½ÏûÏ¢Öмä¼þ£¬»ùÓÚerlangÓïÑÔ¿ª·¢£¬ ¾ß±¸ÓïÑÔ¼¶±ðµÄ¸ß²¢·¢´¦ÀíÄÜÁ¦¡£ºÍSpring¿ò¼ÜÊÇͬһ¼Ò¹«Ë¾¡£
Ö§³Ö³Ö¾Ã»¯¡¢¸ß¿ÉÓÃ
ºËÐÄ5¸ö¸ÅÄî:
1.Queue: ÕæÕý´æ´¢Êý¾ÝµÄµØ·½
2.Exchange: ½ÓÊÕÇëÇó£¬×ª´æÊý¾Ý
3.Bind: ÊÕµ½ÇëÇóºó´æ´¢µ½ÄÄÀï
4.ÏûÏ¢Éú²úÕß:·¢ËÍÊý¾ÝµÄÓ¦ÓÃ
5.ÏûÏ¢Ïû·ÑÕß: È¡³öÊý¾Ý´¦ÀíµÄÓ¦ÓÃ

2¡¢·Ö²¼Ê½ÊÂÎñÎÊÌâ
·Ö²¼Ê½ÊÂÎñÊÇÒ»¸öÒµÎñÎÊÌ⣬²»ÄÜÍÑÀë¾ßÌåµÄ³¡¾°¡£
2.1 ·Ö²¼Ê½ÊÂÎñµÄ¼¸ÖÖ½â¾ö·½°¸
¡ñ »ùÓÚÊý¾Ý¿âXA/ JTAÐÒéµÄ·½Ê½
ÐèÒªÊý¾Ý¿â³§ÉÌÖ§³Ö; JAVA×é¼þÓÐatomikosµÈ
¡ñ Ò첽У¶ÔÊý¾ÝµÄ·½Ê½
Ö§¸¶±¦¡¢Î¢ÐÅÖ§¸¶Ö÷¶¯²éѯ֧¸¶×´Ì¬¡¢¶ÔÕ˵¥µÄÐÎʽ;
¡ñ »ùÓÚ¿É¿¿ÏûÏ¢(MQ)µÄ½â¾ö·½°¸
Òì²½³¡¾°;ͨÓÃÐÔ½ÏÇ¿;ÍØÕ¹ÐԽϸß
¡ñ TCC±à³Ìʽ½â¾ö·½°¸
ÑÏÑ¡¡¢°¢Àï¡¢ÂìÒϽð·þ×Ô¼º·â×°µÄDTX
±¾ÎÄÄ¿±ê:Õë¶ÔËùÓÐÈËȺ£¬Ñ§»á»ùÓÚ¿É¿¿ÏûÏ¢À´½â¾ö·Ö²¼Ê½ÊÂÎñÎÊÌâ¡£
·Ö²¼Ê½ÊÂÎñµÄ½â¾ö·½°¸£¬ÒµÎñÕë¶ÔÐÔºÜÇ¿£¬ÖØÒªµÄÊÇ˼·£¬¶ø²»ÊÇÕÕ°á
ÃÀÍŵãÆÀϵͳ¼Ü¹¹

2.2 ¶àϵͳ¼äµÄ·Ö²¼Ê½ÊÂÎñÎÊÌâ

Óû§Ïµ¥Éú³É¶©µ¥

ÐèÒª´«µÝ¶©µ¥Êý¾Ý,Óɴ˲úÉúÁ½¸öÊÂÎñÒ»ÖÂÐÔÎÊÌâ

´íÎóµÄ°¸Àý

µ±½Ó¿Úµ÷ÓÃʧ°Üʱ£¬¶©µ¥ÏµÍ³ÊÂÎñ»Ø¹ö,ÌáʾÓû§²Ù×÷ʧ°Ü
ÎóÒÔΪÕâÑùµÄ½Ó¿Úµ÷ÓÃд·¨£¬¾Í²»»áÓзֲ¼Ê½ÊÂÎñÎÊÌâ
½Ó¿Úµ÷Óóɹ¦»òÕßʧ°Ü£¬¶¼»á²úÉú·Ö²¼Ê½ÊÂÎñÎÊÌâ:
½Ó¿Úµ÷Óóɹ¦£¬¶©µ¥ÏµÍ³Êý¾Ý¿âÊÂÎñÌύʧ°Ü£¬Ô˵¥ÏµÍ³Ã»Óлعö£¬²úÉúÊý¾Ý
½Ó¿Úµ÷Óó¬Ê±£¬¶©µ¥ÏµÍ³Êý¾Ý¿âÊÂÎñ»Ø¹ö£¬Ô˵¥ÏµÍ³½Ó¿Ú¼ÌÐøÖ´ÐУ¬²úÉúÊý¾Ý
ÉÏÊöÁ½ÖÖÇé¿ö£¬¶¼»áµ¼ÖÂÊý¾Ý²»Ò»ÖµÄÎÊÌâ
3¡¢ÊµÏÖ·Ö²¼Ê½ÊÂÎñ - Îå²½·¨
ͨ¹ýMQ½â¾ö·Ö²¼Ê½ÊÂÎñµÄ5¸ö²½Öè, ÒÔ¼°·Ö²¼Ê½ÊÂÎñ´¦ÀíÖÐҪעÒâµÄµØ·½
֮ǰ¶¼ÊǶ©µ¥ÏµÍ³·¢ËÍHTTPÇëÇóÔ˵¥ÏµÍ³µÄ½Ó¿Ú,³öÎÊÌâÁË!

Òò´ËÎÒÃÇ¿¼ÂÇ·¢ÏûÏ¢¸øMQ, Òì²½ÔÝ´æ!

3.1 ÕûÌåÉè¼ÆË¼Â·

ÍâÂô϶©µ¥ºó,¿ÉÒÔÂýÂýµÈ´ýÔ˵¥ÖÐÐÄÊý¾ÝÉú³É,²¢·ÇÇ¿ÖÆÒªÇóͬʱÐÔ
¿É¿¿Éú²ú:±£Ö¤ÏûÏ¢Ò»¶¨Òª·¢Ë͵½Rabitmq·þÎñ
¿É¿¿Ïû·Ñ:±£Ö¤ÏûϢȡ³öÀ´Ò»¶¨ÕýÈ·Ïû·Ñµô
×îÖÕʹ¶à·½Êý¾Ý´ïµ½Ò»Ö¡£
3.2 ²½Öè1 - ¿É¿¿µÄÏûÏ¢Éú²ú¼Ç¼ÏûÏ¢·¢ËÍ

´æÔÚÒþ»¼ - ¿ÉÄÜÏûÏ¢·¢ËÍʧ°Üѽ!

ΪÁËÈ·±£Êý¾ÝÒ»¶¨³É¹¦·¢Ë͵½MQ¡£
ÔÚͬһÊÂÎñÖУ¬Ôö¼ÓÒ»¸ö¼Ç¼±íµÄ²Ù×÷, ¼Ç¼ÿһÌõ·¢ÍùMQµÄÊý¾ÝÒÔ¼°ËüµÄ·¢ËÍ״̬
ÓÚÊÇÎÒÃÇÔÚ¶©µ¥ÏµÍ³ÖÐÔö¼ÓÒ»¸ö±¾µØÐÅÏ¢±í

ÓÚÊÇÔÚ´úÂëʵ¼ùÖÐ,²»ÔÙͨ¹ýHTTP½Ó¿Úµ÷ÓÃÔ˵¥ÏµÍ³½Ó¿Ú,¶øÊÇʹÓÃMQ
Éú³É¶©µ¥Ê±,Ò²±£´æ±¾µØÐÅÏ¢±í



3.3 ²½Öè2 - ¿É¿¿ÏûÏ¢Éú²ú(ÐÞ¸ÄÏûÏ¢·¢ËÍ״̬)
ÀûÓÃRabbitMQÊÂÎñ·¢²¼È·ÈÏ»úÖÆ(confirm)
¿ªÆôºó£¬MQ׼ȷÊÜÀíÏûÏ¢»á·µ»Ø»ØÖ´

È»ºó¾ÍÄÜÖªµÀÈçºÎ¸üб¾µØÐÅÏ¢±íÁË

-È·±£ÔÚSBÖпªÆôConfirm»úÖÆ



Èç¹û³öÏÖ»ØÖ´Ã»ÊÕµ½¡¢ÏûϢ״̬ÐÞ¸Äʧ°ÜµÈÌØÊâÇé¿ö
¶µµ×·½°¸:¶¨Ê±¼ì²éÏûÏ¢±í£¬³¬Ê±Ã»·¢Ëͳɹ¦£¬ÔÙ´ÎÖØ·¢
3.4 ²½Öè3 - ¿É¿¿ÏûÏ¢´¦Àí(Õý³£´¦Àí)
Ô˵¥ÏµÍ³ÊÕµ½ÏûÏ¢Êý¾Ýºó,ͻȻ崻ú,»òÕß·ÃÎÊÔ˵¥DBʱ,DBͻȻ崻ú,ÏûÏ¢Êý¾Ý²»¾Í¶ªÁËÂð!!!

ÓÚÊÇÐèÒªÒÔÏÂÌØÐÔ:
ÃݵÈÐÔ
·ÀÖ¹ÖØ¸´ÏûÏ¢Êý¾ÝµÄ´¦Àí£¬Ò»´ÎÓû§²Ù×÷£¬Ö»¶ÔÓ¦Ò»´ÎÊý¾Ý´¦Àí

¿ªÆôÊÖ¶¯ACKģʽ
ÓÉÏû·ÑÕß¿ØÖÆÏûÏ¢µÄÖØ·¢/Çå³ý/¶ªÆú

3.5 ²½Öè4 - ¿É¿¿ÏûÏ¢´¦Àí(ÏûÏ¢ÖØ·¢)

Ïû·ÑÕß´¦Àíʧ°Ü£¬ÐèÒªMQÔÙ´ÎÖØ·¢¸øÏû·ÑÕß¡£
³öÏÖÒì³£Ò»°ã»áÖØÊÔ¼¸´Î£¬ÓÉÏû·ÑÕß×ÔÉí¼ÇÂ¼ÖØÊÔ´ÎÊý£¬²¢½øÐдÎÊý¿ØÖÆ(²»»áÓÀÔ¶ÖØÊÔ!)
3.6 ²½ÖèÎå - ¿É¿¿ÏûÏ¢´¦Àí(ÏûÏ¢¶ªÆú)
Ïû·ÑÕß´¦Àíʧ°Ü£¬Ö±½Ó¶ªÆú»òÕß×ªÒÆµ½ËÀÐŶÓÁÐ(DLQ)
ÖØÊÔ´ÎÊý¹ý¶à¡¢ÏûÏ¢ÄÚÈݸñʽ´íÎóµÈÇé¿ö£¬Í¨¹ýÏßÉÏÔ¤¾¯»úÖÆÍ¨ÖªÔËάÈËÔ±

4 ×ܽἰÀ©Õ¹
4.1 MQ·½°¸µÄÓŵãºÍȱµã
¿ÚÓŵã
ͨÓÃÐÔÇ¿
ÍØÕ¹ÐÔÇ¿
·½°¸³ÉÊì
¿Úȱµã
»ùÓÚÏûÏ¢Öмä¼þ£¬Ö»ÊʺÏÒì²½³¡¾°
ÏûÏ¢´¦Àí»áÓÐÑÓ³Ù£¬ÐèÒªÒµÎñÉÏÄܹ»ÈÝÈÌ
¾¡Á¿±ÜÃâ·Ö²¼Ê½ÊÂÎñ;
¾¡Á¿½«·ÇºËÐÄÊÂÎñ×ö³ÉÒì²½;
4.2 ÍØÕ¹
·Ö²¼Ê½ÊÂÎñ½â¾ö·½°¸µÄÀíÂÛÒÀ¾Ý
CAPÀíÂÛ
BASEÀíÂÛ
2PCÐÒé
3PCÐÒé
PaxosËã·¨.
RaftÒ»ÖÂÐÔÐÒé
|