鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

Posted JavaGuide

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨相关的知识,希望对你有一定的参考价值。

鏈枃鐢?FrancisQ 鑰佸摜鎶曠锛?/p>


鏂囩珷寰堥暱锛岀偣璧炲啀鐪嬶紝鍏绘垚濂戒範鎯煒嬸煒嬸煒?/span>

娑堟伅闃熷垪鎵洸

娑堟伅闃熷垪椤惧悕鎬濅箟灏辨槸瀛樻斁娑堟伅鐨勯槦鍒楋紝闃熷垪鎴戝氨涓嶈В閲婁簡锛屽埆鍛婅瘔鎴戜綘杩為槦鍒楅兘涓嶇煡閬撲技鍟ュ惂锛?/p>

鎵€浠ラ棶棰樺苟涓嶆槸娑堟伅闃熷垪鏄粈涔堬紝鑰屾槸 娑堟伅闃熷垪涓轰粈涔堜細鍑虹幇锛熸秷鎭槦鍒楄兘鐢ㄦ潵骞蹭粈涔堬紵鐢ㄥ畠鏉ュ共杩欎簺浜嬩細甯︽潵浠€涔堝ソ澶勶紵娑堟伅闃熷垪浼氬甫鏉ュ壇浣滅敤鍚楋紵

娑堟伅闃熷垪涓轰粈涔堜細鍑虹幇锛?/span>

娑堟伅闃熷垪绠楁槸浣滀负鍚庣绋嬪簭鍛樼殑涓€涓繀澶囨妧鑳藉惂锛屽洜涓?span class="mq-14">鍒嗗竷寮忓簲鐢ㄥ繀瀹氭秹鍙婂埌鍚勪釜绯荤粺涔嬮棿鐨勯€氫俊闂锛岃繖涓椂鍊欐秷鎭槦鍒椾篃搴旇繍鑰岀敓浜嗐€傚彲浠ヨ鍒嗗竷寮忕殑浜х敓鏄秷鎭槦鍒楃殑鍩虹锛岃€屽垎甯冨紡鎬曟槸涓€涓緢鍙よ€佺殑姒傚康浜嗗惂锛屾墍浠ユ秷鎭槦鍒椾篃鏄竴涓緢鍙よ€佺殑涓棿浠朵簡銆?/p>

娑堟伅闃熷垪鑳界敤鏉ュ共浠€涔堬紵

寮傛

浣犲彲鑳戒細鍙嶉┏鎴戯紝搴旂敤涔嬮棿鐨勯€氫俊鍙堜笉鏄彧鑳界敱娑堟伅闃熷垪瑙e喅锛屽ソ濂界殑閫氫俊涓轰粈涔堜腑闂撮潪瑕佹彃涓€涓秷鎭槦鍒楀憿锛熸垜涓嶈兘鐩存帴杩涜閫氫俊鍚楋紵

寰堝ソ馃憤锛屼綘鍙堟彁鍑轰簡涓€涓蹇碉紝鍚屾閫氫俊銆傚氨姣斿鐜板湪涓氱晫浣跨敤姣旇緝澶氱殑 Dubbo 灏辨槸涓€涓€傜敤浜庡悇涓郴缁熶箣闂村悓姝ラ€氫俊鐨?nbsp;RPC 妗嗘灦銆?/p>

鎴戞潵涓句釜馃尠鍚э紝姣斿鎴戜滑鏈変竴涓喘绁ㄧ郴缁燂紝闇€姹傛槸鐢ㄦ埛鍦ㄨ喘涔板畬涔嬪悗鑳芥帴鏀跺埌璐拱瀹屾垚鐨勭煭淇°€?/p>

鎴戜滑鐪佺暐涓棿鐨勭綉缁滈€氫俊鏃堕棿娑堣€楋紝鍋囧璐エ绯荤粺澶勭悊闇€瑕?150ms 锛岀煭淇$郴缁熷鐞嗛渶瑕?200ms 锛岄偅涔堟暣涓鐞嗘祦绋嬬殑鏃堕棿娑堣€楀氨鏄?150ms + 200ms = 350ms銆?/p>

褰撶劧锛屼箥鐪嬫病浠€涔堥棶棰樸€傚彲鏄粩缁嗕竴鎯充綘灏辨劅瑙夋湁鐐归棶棰橈紝鎴戠敤鎴疯喘绁ㄥ湪璐エ绯荤粺鐨勬椂鍊欏叾瀹炲氨宸茬粡瀹屾垚浜嗚喘涔帮紝鑰屾垜鐜板湪閫氳繃鍚屾璋冪敤闈炶璁╂暣涓姹傛媺闀挎椂闂达紝鑰岀煭鎭郴缁熻繖鐜╂剰鍙堜笉鏄緢鏈夊繀瑕侊紝瀹冧粎浠呮槸涓€涓緟鍔╁姛鑳藉寮虹敤鎴蜂綋楠屾劅鑰屽凡銆傛垜鐜板湪鏁翠釜璋冪敤娴佺▼灏辨湁鐐?nbsp;澶撮噸鑴氳交 鐨勬劅瑙変簡锛岃喘绁ㄦ槸涓€涓笉澶€楁椂鐨勬祦绋嬶紝鑰屾垜鐜板湪鍥犱负鍚屾璋冪敤锛岄潪瑕佺瓑寰呭彂閫佺煭淇¤繖涓瘮杈冭€楁椂鐨勬搷浣滄墠杩斿洖缁撴灉銆傞偅鎴戝鏋滃啀鍔犱竴涓彂閫侀偖浠跺憿锛?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

杩欐牱鏁翠釜绯荤粺鐨勮皟鐢ㄩ摼鍙堝彉闀夸簡锛屾暣涓椂闂村氨鍙樻垚浜?50ms銆?/p>

褰撴垜浠湪瀛︾敓鏃朵唬闇€瑕佸湪椋熷爞鎺掗槦鐨勬椂鍊欙紝鎴戜滑鍜岄鍫傚ぇ濡堝氨鏄竴涓悓姝ョ殑妯″瀷銆?/p>

鎴戜滑闇€瑕佸憡璇夐鍫傚ぇ濡堬細鈥滃濮愶紝缁欐垜鍔犱釜楦¤吙锛屽啀鍔犱釜閰歌荆鍦熻眴涓濓紝甯垜娴囩偣姹佷笂鍘伙紝澶氭墦鐐归キ鍝︷煒嬸煒嬸煒嬧€?鍜~~ 涓轰簡澶氬悆鐐癸紝鐪熸伓蹇冦€?/p>

鐒跺悗澶у甯垜浠墦楗厤鑿滐紝鎴戜滑鐪嬬潃澶у閭iⅳ鎶栫殑鎵嬪拰鎺夎惤鐨勫湡璞嗕笣涓嶇鍜戒簡鍜藉彛姘淬€?/p>

鏈€缁堟垜浠粠澶у鎵嬩腑鎺ヨ繃楗彍鐒跺悗鍘诲鎵惧骇浣嶄簡鈥?/p>

鍥炴兂涓€涓嬶紝鎴戜滑鍦ㄧ粰澶у鍙戦€侀渶瑕佺殑淇℃伅涔嬪悗鎴戜滑鏄?nbsp;鍚屾绛夊緟澶у缁欐垜閰嶅ソ楗彍 鐨勶紝涓婇潰鎴戜滑鍙槸鍔犱簡楦¤吙鍜屽湡璞嗕笣锛屼竾涓€鎴戝啀鍔犱竴涓暘鑼勭墰鑵╋紝闊彍楦¤泲锛岃繖鏍锋槸涓嶆槸澶у鎵撻キ閰嶈彍鐨勬祦绋嬪氨浼氬彉闀匡紝鎴戜滑绛夊緟鐨勬椂闂翠篃浼氱浉搴旂殑鍙橀暱銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

閭e悗鏉ワ紝鎴戜滑宸ヤ綔璧氶挶浜嗘湁閽卞幓楗簵鍚冮キ浜嗭紝鎴戜滑鍛婅瘔鏈嶅姟鍛樻潵涓€纰楃墰鑲夐潰鍔犱釜鑽峰寘铔?nbsp;(浼犺揪涓€涓秷鎭? 锛岀劧鍚庢垜浠氨鍙互鍦ㄩキ妗屼笂瀹夊績鐨勭帺鎵嬫満浜?nbsp;(骞茶嚜宸卞叾浠栦簨鎯? 锛岀瓑鍒版垜浠殑鐗涜倝闈笂浜嗘垜浠氨鍙互鍚冧簡銆傝繖鍏朵腑鎴戜滑涔熷氨浼犺揪浜嗕竴涓秷鎭紝鐒跺悗鎴戜滑鍙堣浆杩囧ご骞插叾浠栦簨鎯呬簡銆傝繖鍏朵腑铏界劧鍋氶潰鐨勬椂闂存病鏈夊彉鐭紝浣嗘槸鎴戜滑鍙渶瑕佷紶杈句竴涓秷鎭氨鍙互鐪嬪叾浠栦簨鎯呬簡锛岃繖鏄竴涓?nbsp;寮傛 鐨勬蹇点€?/p>

鎵€浠ワ紝涓轰簡瑙e喅杩欎竴涓棶棰橈紝鑱槑鐨勭▼搴忓憳鍦ㄤ腑闂翠篃鍔犱簡涓被浼间簬鏈嶅姟鍛樼殑涓棿浠垛€斺€旀秷鎭槦鍒椼€傝繖涓椂鍊欐垜浠氨鍙互鎶婃ā鍨嬬粰鏀归€犱簡銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

杩欐牱锛屾垜浠湪灏嗘秷鎭瓨鍏ユ秷鎭槦鍒椾箣鍚庢垜浠氨鍙互鐩存帴杩斿洖浜?鎴戜滑鍛婅瘔鏈嶅姟鍛樻垜浠鍚冧粈涔堢劧鍚庣帺鎵嬫満)锛屾墍浠ユ暣涓€楁椂鍙槸 150ms + 10ms = 160ms銆?/p>

浣嗘槸浣犻渶瑕佹敞鎰忕殑鏄紝鏁翠釜娴佺▼鐨勬椂闀挎槸娌″彉鐨勶紝灏卞儚浣犱粎浠呭憡璇夋湇鍔″憳瑕佸悆浠€涔堟槸涓嶄細褰卞搷鍒板仛闈㈢殑閫熷害鐨勩€?/p>

瑙h€?/span>

鍥炲埌鏈€鍒濆悓姝ヨ皟鐢ㄧ殑杩囩▼锛屾垜浠啓涓吉浠g爜绠€鍗曟鎷竴涓嬨€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

閭d箞绗簩姝ワ紝鎴戜滑鍙堟坊鍔犱簡涓€涓彂閫侀偖浠讹紝鎴戜滑灏卞緱閲嶆柊鍘讳慨鏀逛唬鐮侊紝濡傛灉鎴戜滑鍙堝姞涓€涓渶姹傦細鐢ㄦ埛璐拱瀹岃繕闇€瑕佺粰浠栧姞绉垎锛岃繖涓椂鍊欐垜浠槸涓嶆槸鍙堝緱鏀逛唬鐮侊紵

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

濡傛灉浣犺寰楄繕琛岋紝閭d箞鎴戣繖涓椂鍊欎笉瑕佸彂閭欢杩欎釜鏈嶅姟浜嗗憿锛屾垜鏄笉鏄張寰楁敼浠g爜锛屽張寰楅噸鍚簲鐢紵

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

杩欐牱鏀规潵鏀瑰幓鏄笉鏄緢楹荤儲锛岄偅涔?nbsp;姝ゆ椂鎴戜滑灏辩敤涓€涓秷鎭槦鍒楀湪涓棿杩涜瑙h€?/strong> 銆備綘闇€瑕佹敞鎰忕殑鏄紝鎴戜滑鍚庨潰鐨勫彂閫佺煭淇°€佸彂閫侀偖浠躲€佹坊鍔犵Н鍒嗙瓑涓€浜涙搷浣滈兘渚濊禆浜庝笂闈㈢殑 result 锛岃繖涓滆タ鎶借薄鍑烘潵灏辨槸璐エ鐨勫鐞嗙粨鏋滃憖锛屾瘮濡傝鍗曞彿锛岀敤鎴疯处鍙风瓑绛夛紝涔熷氨鏄鎴戜滑鍚庨潰鐨勪竴绯诲垪鏈嶅姟閮芥槸闇€瑕佸悓鏍风殑娑堟伅鏉ヨ繘琛屽鐞嗐€傛棦鐒惰繖鏍凤紝鎴戜滑鏄笉鏄彲浠ラ€氳繃 鈥滃箍鎾秷鎭€?/strong> 鏉ュ疄鐜般€?/p>

鎴戜笂闈㈡墍璁茬殑鈥滃箍鎾€濆苟涓嶆槸鐪熸鐨勫箍鎾紝鑰屾槸鎺ヤ笅鏉ョ殑绯荤粺浣滀负娑堣垂鑰呭幓 璁㈤槄 鐗瑰畾鐨勪富棰樸€傛瘮濡傛垜浠繖閲岀殑涓婚灏卞彲浠ュ彨鍋?nbsp;璁㈢エ 锛屾垜浠喘涔扮郴缁熶綔涓轰竴涓敓浜ц€呭幓鐢熶骇杩欐潯娑堟伅鏀惧叆娑堟伅闃熷垪锛岀劧鍚庢秷璐硅€呰闃呬簡杩欎釜涓婚锛屼細浠庢秷鎭槦鍒椾腑鎷夊彇娑堟伅骞舵秷璐广€傚氨姣斿鎴戜滑鍒氬垰鐢荤殑閭e紶鍥撅紝浣犱細鍙戠幇锛屽湪鐢熶骇鑰呰繖杈规垜浠彧闇€瑕佸叧娉?nbsp;鐢熶骇娑堟伅鍒版寚瀹氫富棰樹腑 锛岃€?nbsp;娑堣垂鑰呭彧闇€瑕佸叧娉ㄤ粠鎸囧畾涓婚涓媺鍙栨秷鎭?/strong> 灏辫浜嗐€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

濡傛灉娌℃湁娑堟伅闃熷垪锛屾瘡褰撲竴涓柊鐨勪笟鍔℃帴鍏ワ紝鎴戜滑閮借鍦ㄤ富绯荤粺璋冪敤鏂版帴鍙c€佹垨鑰呭綋鎴戜滑鍙栨秷鏌愪簺涓氬姟锛屾垜浠篃寰楀湪涓荤郴缁熷垹闄ゆ煇浜涙帴鍙h皟鐢ㄣ€傛湁浜嗘秷鎭槦鍒楋紝鎴戜滑鍙渶瑕佸叧蹇冩秷鎭槸鍚﹂€佽揪浜嗛槦鍒楋紝鑷充簬璋佸笇鏈涜闃咃紝鎺ヤ笅鏉ユ敹鍒版秷鎭浣曞鐞嗭紝鏄笅娓哥殑浜嬫儏锛屾棤鐤戞瀬澶у湴鍑忓皯浜嗗紑鍙戝拰鑱旇皟鐨勫伐浣滈噺銆?/p>

鍓婂嘲

鎴戜滑鍐嶆鍥炲埌涓€寮€濮嬫垜浠娇鐢ㄥ悓姝ヨ皟鐢ㄧ郴缁熺殑鎯呭喌锛屽苟涓旀€濊€冧竴涓嬶紝濡傛灉姝ゆ椂鏈夊ぇ閲忕敤鎴疯姹傝喘绁ㄦ暣涓郴缁熶細鍙樻垚浠€涔堟牱锛?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

濡傛灉锛屾鏃舵湁涓€涓囩殑璇锋眰杩涘叆璐エ绯荤粺锛屾垜浠煡閬撹繍琛屾垜浠富涓氬姟鐨勬湇鍔″櫒閰嶇疆涓€鑸細姣旇緝濂斤紝鎵€浠ヨ繖閲屾垜浠亣璁捐喘绁ㄧ郴缁熻兘鎵垮彈杩欎竴涓囩殑鐢ㄦ埛璇锋眰锛岄偅涔堜篃灏辨剰鍛崇潃鎴戜滑鍚屾椂涔熶細鍑虹幇涓€涓囪皟鐢ㄥ彂鐭俊鏈嶅姟鐨勮姹傘€傝€屽浜庣煭淇$郴缁熸潵璇村苟涓嶆槸鎴戜滑鐨勪富瑕佷笟鍔★紝鎵€浠ユ垜浠厤澶囩殑纭欢璧勬簮骞朵笉浼氬お楂橈紝閭d箞浣犺寰楃幇鍦ㄨ繖涓煭淇$郴缁熻兘鎵垮彈杩欎竴涓囩殑宄板€间箞锛屼笖涓嶈鑳戒笉鑳芥壙鍙楋紝绯荤粺浼氫笉浼?nbsp;鐩存帴宕╂簝 浜嗭紵

鐭俊涓氬姟鍙堜笉鏄垜浠殑涓讳笟鍔★紝鎴戜滑鑳戒笉鑳?nbsp;鎶樹腑澶勭悊 鍛紵濡傛灉鎴戜滑鎶婅喘涔板畬鎴愮殑淇℃伅鍙戦€佸埌娑堟伅闃熷垪涓紝鑰岀煭淇$郴缁?nbsp;灏借嚜宸辨墍鑳藉湴鍘绘秷鎭槦鍒椾腑鍙栨秷鎭拰娑堣垂娑堟伅 锛屽嵆浣垮鐞嗛€熷害鎱竴鐐逛篃鏃犳墍璋擄紝鍙鎴戜滑鐨勭郴缁熸病鏈夊穿婧冨氨琛屼簡銆?/p>

鐣欏緱姹熷北鍦紝杩樻€曟病鏌寸儳锛熶綘鏁㈣姣忔鍙戦€侀獙璇佺爜鐨勬椂鍊欐槸涓€鍙戜綘灏辨敹鍒颁簡鐨勪箞锛?/p>

娑堟伅闃熷垪鑳藉甫鏉ヤ粈涔堝ソ澶勶紵

鍏跺疄涓婇潰鎴戝凡缁忚浜嗐€?span class="mq-88">寮傛銆佽В鑰︺€佸墛宄般€?/strong> 鍝€曚綘涓婇潰鐨勯兘娌$湅鎳備篃鍗冧竾瑕佽浣忚繖鍏釜瀛楋紝鍥犱负浠栦笉浠呮槸娑堟伅闃熷垪鐨勭簿鍗庯紝鏇存槸缂栫▼鍜屾灦鏋勭殑绮惧崕銆?/p>

娑堟伅闃熷垪浼氬甫鏉ュ壇浣滅敤鍚楋紵

娌℃湁鍝竴闂ㄦ妧鏈槸鈥滈摱寮光€濓紝娑堟伅闃熷垪涔熸湁瀹冪殑鍓綔鐢ㄣ€?/p>

姣斿锛屾湰鏉ュソ濂界殑涓や釜绯荤粺涔嬮棿鐨勮皟鐢紝鎴戜腑闂村姞浜嗕釜娑堟伅闃熷垪锛屽鏋滄秷鎭槦鍒楁寕浜嗘€庝箞鍔炲憿锛熸槸涓嶆槸 闄嶄綆浜嗙郴缁熺殑鍙敤鎬?/strong> 锛?/p>

閭h繖鏍锋槸涓嶆槸瑕佷繚璇丠A(楂樺彲鐢?锛熸槸涓嶆槸瑕佹悶闆嗙兢锛熼偅涔堟垜 鏁翠釜绯荤粺鐨勫鏉傚害鏄笉鏄笂鍗囦簡 锛?/p>

鎶涘紑涓婇潰鐨勯棶棰樹笉璁诧紝涓囦竴鎴戝彂閫佹柟鍙戦€佸け璐ヤ簡锛岀劧鍚庢墽琛岄噸璇曪紝杩欐牱灏卞彲鑳戒骇鐢熼噸澶嶇殑娑堟伅銆?/p>

鎴栬€呮垜娑堣垂绔鐞嗗け璐ヤ簡锛岃姹傞噸鍙戯紝杩欐牱涔熶細浜х敓閲嶅鐨勬秷鎭€?/p>

瀵逛簬涓€浜涘井鏈嶅姟鏉ヨ锛屾秷璐归噸澶嶆秷鎭細甯︽潵鏇村ぇ鐨勯夯鐑︼紝姣斿澧炲姞绉垎锛岃繖涓椂鍊欐垜鍔犱簡澶氭鏄笉鏄鍏朵粬鐢ㄦ埛涓嶅叕骞筹紵

閭d箞锛屽張 濡備綍瑙e喅閲嶅娑堣垂娑堟伅鐨勯棶棰?/strong> 鍛紵

濡傛灉鎴戜滑姝ゆ椂鐨勬秷鎭渶瑕佷繚璇佷弗鏍肩殑椤哄簭鎬ф€庝箞鍔炲憿锛熸瘮濡傜敓浜ц€呯敓浜т簡涓€绯诲垪鐨勬湁搴忔秷鎭?瀵逛竴涓猧d涓?鐨勮褰曡繘琛屽垹闄ゅ鍔犱慨鏀?锛屼絾鏄垜浠煡閬撳湪鍙戝竷璁㈤槄妯″瀷涓紝瀵逛簬涓婚鏄棤椤哄簭鐨勶紝閭d箞杩欎釜鏃跺€欏氨浼氬鑷村浜庢秷璐硅€呮秷璐规秷鎭殑鏃跺€欐病鏈夋寜鐓х敓浜ц€呯殑鍙戦€侀『搴忔秷璐癸紝姣斿杩欎釜鏃跺€欐垜浠秷璐圭殑椤哄簭涓轰慨鏀瑰垹闄ゅ鍔狅紝濡傛灉璇ヨ褰曟秹鍙婂埌閲戦鐨勮瘽鏄笉鏄細鍑哄ぇ浜嬫儏锛?/p>

閭d箞锛屽張 濡備綍瑙e喅娑堟伅鐨勯『搴忔秷璐归棶棰?/strong> 鍛紵

灏辨嬁鎴戜滑涓婇潰鎵€璁茬殑鍒嗗竷寮忕郴缁熸潵璇达紝鐢ㄦ埛璐エ瀹屾垚涔嬪悗鏄笉鏄渶瑕佸鍔犺处鎴风Н鍒嗭紵鍦ㄥ悓涓€涓郴缁熶腑鎴戜滑涓€鑸細浣跨敤浜嬪姟鏉ヨ繘琛岃В鍐筹紝濡傛灉鐢?nbsp;Spring 鐨勮瘽鎴戜滑鍦ㄤ笂闈吉浠g爜涓姞鍏?nbsp;@Transactional 娉ㄨВ灏卞ソ浜嗐€備絾鏄湪涓嶅悓绯荤粺涓浣曚繚璇佷簨鍔″憿锛熸€讳笉鑳借繖涓郴缁熸垜鎵i挶鎴愬姛浜嗕綘閭gН鍒嗙郴缁熺Н鍒嗘病鍔犲惂锛熸垨鑰呰鎴戣繖鎵i挶鏄庢槑澶辫触浜嗭紝浣犻偅绉垎绯荤粺缁欐垜鍔犱簡绉垎銆?/p>

閭d箞锛屽張濡備綍 瑙e喅鍒嗗竷寮忎簨鍔¢棶棰?/strong> 鍛紵

鎴戜滑鍒氬垰璇翠簡锛屾秷鎭槦鍒楀彲浠ヨ繘琛屽墛宄版搷浣滐紝閭e鏋滄垜鐨勬秷璐硅€呭鏋滄秷璐瑰緢鎱㈡垨鑰呯敓浜ц€呯敓浜ф秷鎭緢蹇紝杩欐牱鏄笉鏄細灏嗘秷鎭爢绉湪娑堟伅闃熷垪涓紵

閭d箞锛屽張濡備綍 瑙e喅娑堟伅鍫嗙Н鐨勯棶棰?/strong> 鍛紵

鍙敤鎬ч檷浣庯紝澶嶆潅搴︿笂鍗囷紝鍙堝甫鏉ヤ竴绯诲垪鐨勯噸澶嶆秷璐癸紝椤哄簭娑堣垂锛屽垎甯冨紡浜嬪姟锛屾秷鎭爢绉殑闂锛岃繖娑堟伅闃熷垪杩樻€庝箞鐢ㄥ晩馃樀锛?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍒€ワ紝鍔炴硶鎬绘槸鏈夌殑銆?/p>

RocketMQ鏄粈涔堬紵

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍝囷紝浣犱釜娣疯泲锛佷笂闈㈢粰鎴戞姏鍑洪偅涔堝闂锛屼綘鐜板湪鍙堣 RocketMQ 锛岃繕璁╀笉璁╀汉娲讳簡锛燂紒馃が

鍒€ュ埆鎬ワ紝璇濊浣犵幇鍦ㄦ竻妤?nbsp;MQ 鐨勬瀯閫犲悧锛屾垜杩樻病璁插憿锛屾垜浠厛鎼炴槑鐧?nbsp;MQ 鐨勫唴閮ㄦ瀯閫狅紝鍐嶆潵鐪嬬湅濡備綍瑙e喅涓婇潰鐨勪竴绯诲垪闂鍚э紝涓嶈繃浣犳渶濂藉甫鐫€闂鍘婚槄璇诲拰浜嗚В鍠斻€?/p>

RocketMQ 鏄竴涓?nbsp;闃熷垪妯″瀷 鐨勬秷鎭腑闂翠欢锛屽叿鏈?span class="mq-128">楂樻€ц兘銆侀珮鍙潬銆侀珮瀹炴椂銆佸垎甯冨紡 鐨勭壒鐐广€傚畠鏄竴涓噰鐢?nbsp;Java 璇█寮€鍙戠殑鍒嗗竷寮忕殑娑堟伅绯荤粺锛岀敱闃块噷宸村反鍥㈤槦寮€鍙戯紝鍦?016骞村簳璐$尞缁?nbsp;Apache锛屾垚涓轰簡 Apache 鐨勪竴涓《绾ч」鐩€傚湪闃块噷鍐呴儴锛?code class="mq-132">RocketMQ 寰堝ソ鍦版湇鍔′簡闆嗗洟澶уぇ灏忓皬涓婂崈涓簲鐢紝鍦ㄦ瘡骞寸殑鍙屽崄涓€褰撳ぉ锛屾洿鏈変笉鍙€濊鐨勪竾浜跨骇娑堟伅閫氳繃 RocketMQ 娴佽浆銆?/p>

搴熻瘽涓嶅璇达紝鎯宠浜嗚В RocketMQ 鍘嗗彶鐨勫悓瀛﹀彲浠ヨ嚜宸卞幓鎼滃璧勬枡銆傚惉瀹屼笂闈㈢殑浠嬬粛锛屼綘鍙鐭ラ亾 RocketMQ 寰堝揩銆佸緢鐗涖€佽€屼笖缁忓巻杩囧弻鍗佷竴鐨勫疄璺靛氨琛屼簡锛?/p>

闃熷垪妯″瀷鍜屼富棰樻ā鍨?/span>

鍦ㄨ皥 RocketMQ 鐨勬妧鏈灦鏋勪箣鍓嶏紝鎴戜滑鍏堟潵浜嗚В涓€涓嬩袱涓悕璇嶆蹇碘€斺€?span class="mq-141">闃熷垪妯″瀷 鍜?nbsp;涓婚妯″瀷 銆?/p>

棣栧厛鎴戦棶涓€涓棶棰橈紝娑堟伅闃熷垪涓轰粈涔堣鍙秷鎭槦鍒楋紵

浣犲彲鑳借寰楀緢寮辨櫤锛岃繖鐜╂剰涓嶅氨鏄瓨鏀炬秷鎭殑闃熷垪鍢涳紵涓嶅彨娑堟伅闃熷垪鍙粈涔堬紵

鐨勭‘锛屾棭鏈熺殑娑堟伅涓棿浠舵槸閫氳繃 闃熷垪 杩欎竴妯″瀷鏉ュ疄鐜扮殑锛屽彲鑳芥槸鍘嗗彶鍘熷洜锛屾垜浠兘涔犳儻鎶婃秷鎭腑闂翠欢鎴愪负娑堟伅闃熷垪銆?/p>

浣嗘槸锛屽浠婁緥濡?nbsp;RocketMQ 銆?code class="mq-149">Kafka 杩欎簺浼樼鐨勬秷鎭腑闂翠欢涓嶄粎浠呮槸閫氳繃涓€涓?nbsp;闃熷垪 鏉ュ疄鐜版秷鎭瓨鍌ㄧ殑銆?/p>

闃熷垪妯″瀷

灏卞儚鎴戜滑鐞嗚В闃熷垪涓€鏍凤紝娑堟伅涓棿浠剁殑闃熷垪妯″瀷灏辩湡鐨勫彧鏄竴涓槦鍒椼€傘€傘€傛垜鐢讳竴寮犲浘缁欏ぇ瀹剁悊瑙c€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍦ㄤ竴寮€濮嬫垜璺熶綘鎻愬埌浜嗕竴涓?nbsp;鈥滃箍鎾€?/strong> 鐨勬蹇碉紝涔熷氨鏄濡傛灉鎴戜滑姝ゆ椂鎴戜滑闇€瑕佸皢涓€涓秷鎭彂閫佺粰澶氫釜娑堣垂鑰?姣斿姝ゆ椂鎴戦渶瑕佸皢淇℃伅鍙戦€佺粰鐭俊绯荤粺鍜岄偖浠剁郴缁?锛岃繖涓椂鍊欏崟涓槦鍒楀嵆涓嶈兘婊¤冻闇€姹備簡銆?/p>

褰撶劧浣犲彲浠ヨ Producer 鐢熶骇娑堟伅鏀惧叆澶氫釜闃熷垪涓紝鐒跺悗姣忎釜闃熷垪鍘诲搴旀瘡涓€涓秷璐硅€呫€傞棶棰樻槸鍙互瑙e喅锛屽垱寤哄涓槦鍒楀苟涓斿鍒跺浠芥秷鎭槸浼氬緢褰卞搷璧勬簮鍜屾€ц兘鐨勩€傝€屼笖锛岃繖鏍峰瓙灏变細瀵艰嚧鐢熶骇鑰呴渶瑕佺煡閬撳叿浣撴秷璐硅€呬釜鏁扮劧鍚庡幓澶嶅埗瀵瑰簲鏁伴噺鐨勬秷鎭槦鍒楋紝杩欏氨杩濊儗鎴戜滑娑堟伅涓棿浠剁殑 瑙h€?/strong> 杩欎竴鍘熷垯銆?/p>

涓婚妯″瀷

閭d箞鏈夋病鏈夊ソ鐨勬柟娉曞幓瑙e喅杩欎竴涓棶棰樺憿锛熸湁锛岄偅灏辨槸 涓婚妯″瀷 鎴栬€呭彲浠ョО涓?nbsp;鍙戝竷璁㈤槄妯″瀷 銆?/p>

鎰熷叴瓒g殑鍚屽鍙互鍘讳簡瑙d竴涓嬭璁℃ā寮忛噷闈㈢殑瑙傚療鑰呮ā寮忓苟涓旀墜鍔ㄥ疄鐜颁竴涓嬶紝鎴戠浉淇′綘浼氭湁鎵€鏀惰幏鐨勩€?/p>

鍦ㄤ富棰樻ā鍨嬩腑锛屾秷鎭殑鐢熶骇鑰呯О涓?nbsp;鍙戝竷鑰?Publisher) 锛屾秷鎭殑娑堣垂鑰呯О涓?nbsp;璁㈤槄鑰?Subscriber) 锛屽瓨鏀炬秷鎭殑瀹瑰櫒绉颁负 涓婚(Topic) 銆?/p>

鍏朵腑锛屽彂甯冭€呭皢娑堟伅鍙戦€佸埌鎸囧畾涓婚涓紝璁㈤槄鑰呴渶瑕?nbsp;鎻愬墠璁㈤槄涓婚 鎵嶈兘鎺ュ彈鐗瑰畾涓婚鐨勬秷鎭€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

RocketMQ涓殑娑堟伅妯″瀷

RockerMQ 涓殑娑堟伅妯″瀷灏辨槸鎸夌収 涓婚妯″瀷 鎵€瀹炵幇鐨勩€備綘鍙兘浼氬ソ濂囪繖涓?nbsp;涓婚 鍒板簳鏄€庝箞瀹炵幇鐨勫憿锛熶綘涓婇潰涔熸病鏈夎鍒板憖锛?/p>

鍏跺疄瀵逛簬涓婚妯″瀷鐨勫疄鐜版潵璇存瘡涓秷鎭腑闂翠欢鐨勫簳灞傝璁¢兘鏄笉涓€鏍风殑锛屽氨姣斿 Kafka 涓殑 鍒嗗尯 锛?code class="mq-185">RocketMQ 涓殑 闃熷垪 锛?code class="mq-187">RabbitMQ 涓殑 Exchange 銆傛垜浠彲浠ョ悊瑙d负 涓婚妯″瀷/鍙戝竷璁㈤槄妯″瀷 灏辨槸涓€涓爣鍑嗭紝閭d簺涓棿浠跺彧涓嶈繃鐓х潃杩欎釜鏍囧噯鍘诲疄鐜拌€屽凡銆?/p>

鎵€浠ワ紝RocketMQ 涓殑 涓婚妯″瀷 鍒板簳鏄浣曞疄鐜扮殑鍛紵棣栧厛鎴戠敾涓€寮犲浘锛屽ぇ瀹跺皾璇曠潃鍘荤悊瑙d竴涓嬨€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鎴戜滑鍙互鐪嬪埌鍦ㄦ暣涓浘涓湁 Producer Group 銆?code class="mq-197">Topic 銆?code class="mq-198">Consumer Group 涓変釜瑙掕壊锛屾垜鏉ュ垎鍒粙缁嶄竴涓嬩粬浠€?/p>

  • Producer Group 鐢熶骇鑰呯粍锛氫唬琛ㄦ煇涓€绫荤殑鐢熶骇鑰咃紝姣斿鎴戜滑鏈夊涓鏉€绯荤粺浣滀负鐢熶骇鑰咃紝杩欏涓悎鍦ㄤ竴璧峰氨鏄竴涓?nbsp;Producer Group 鐢熶骇鑰呯粍锛屽畠浠竴鑸敓浜х浉鍚岀殑娑堟伅銆?/p>

  • Consumer Group 娑堣垂鑰呯粍锛氫唬琛ㄦ煇涓€绫荤殑娑堣垂鑰咃紝姣斿鎴戜滑鏈夊涓煭淇$郴缁熶綔涓烘秷璐硅€咃紝杩欏涓悎鍦ㄤ竴璧峰氨鏄竴涓?nbsp;Consumer Group 娑堣垂鑰呯粍锛屽畠浠竴鑸秷璐圭浉鍚岀殑娑堟伅銆?/p>

  • Topic 涓婚锛氫唬琛ㄤ竴绫绘秷鎭紝姣斿璁㈠崟娑堟伅锛岀墿娴佹秷鎭瓑绛夈€?/p>

浣犲彲浠ョ湅鍒板浘涓敓浜ц€呯粍涓殑鐢熶骇鑰呬細鍚戜富棰樺彂閫佹秷鎭紝鑰?nbsp;涓婚涓瓨鍦ㄥ涓槦鍒?/strong>锛岀敓浜ц€呮瘡娆$敓浜ф秷鎭箣鍚庢槸鎸囧畾涓婚涓殑鏌愪釜闃熷垪鍙戦€佹秷鎭殑銆?/p>

姣忎釜涓婚涓兘鏈夊涓槦鍒?杩欓噷杩樹笉娑夊強鍒?nbsp;Broker)锛岄泦缇ゆ秷璐规ā寮忎笅锛屼竴涓秷璐硅€呴泦缇ゅ鍙版満鍣ㄥ叡鍚屾秷璐逛竴涓?nbsp;topic 鐨勫涓槦鍒楋紝涓€涓槦鍒楀彧浼氳涓€涓秷璐硅€呮秷璐?/strong>銆傚鏋滄煇涓秷璐硅€呮寕鎺夛紝鍒嗙粍鍐呭叾瀹冩秷璐硅€呬細鎺ユ浛鎸傛帀鐨勬秷璐硅€呯户缁秷璐广€傚氨鍍忎笂鍥句腑 Consumer1 鍜?nbsp;Consumer2 鍒嗗埆瀵瑰簲鐫€涓や釜闃熷垪锛岃€?nbsp;Consuer3 鏄病鏈夐槦鍒楀搴旂殑锛屾墍浠ヤ竴鑸潵璁茶鎺у埗 娑堣垂鑰呯粍涓殑娑堣垂鑰呬釜鏁板拰涓婚涓槦鍒椾釜鏁扮浉鍚?/strong> 銆?/p>

褰撶劧涔熷彲浠ユ秷璐硅€呬釜鏁板皬浜庨槦鍒椾釜鏁帮紝鍙笉杩囦笉澶缓璁€傚涓嬪浘銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

姣忎釜娑堣垂缁勫湪姣忎釜闃熷垪涓婄淮鎶や竴涓秷璐逛綅缃?/strong> 锛屼负浠€涔堝憿锛?/p>

鍥犱负鎴戜滑鍒氬垰鐢荤殑浠呬粎鏄竴涓秷璐硅€呯粍锛屾垜浠煡閬撳湪鍙戝竷璁㈤槄妯″紡涓竴鑸細娑夊強鍒板涓秷璐硅€呯粍锛岃€屾瘡涓秷璐硅€呯粍鍦ㄦ瘡涓槦鍒椾腑鐨勬秷璐逛綅缃兘鏄笉鍚岀殑銆傚鏋滄鏃舵湁澶氫釜娑堣垂鑰呯粍锛岄偅涔堟秷鎭涓€涓秷璐硅€呯粍娑堣垂瀹屼箣鍚庢槸涓嶄細鍒犻櫎鐨?鍥犱负鍏跺畠娑堣垂鑰呯粍涔熼渶瑕佸憖)锛屽畠浠呬粎鏄负姣忎釜娑堣垂鑰呯粍缁存姢涓€涓?nbsp;娑堣垂浣嶇Щ(offset) 锛屾瘡娆℃秷璐硅€呯粍娑堣垂瀹屼細杩斿洖涓€涓垚鍔熺殑鍝嶅簲锛岀劧鍚庨槦鍒楀啀鎶婄淮鎶ょ殑娑堣垂浣嶇Щ鍔犱竴锛岃繖鏍峰氨涓嶄細鍑虹幇鍒氬垰娑堣垂杩囩殑娑堟伅鍐嶄竴娆¤娑堣垂浜嗐€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍙兘浣犺繕鏈変竴涓棶棰橈紝涓轰粈涔堜竴涓富棰樹腑闇€瑕佺淮鎶ゅ涓槦鍒?/strong> 锛?/p>

绛旀鏄?nbsp;鎻愰珮骞跺彂鑳藉姏 銆傜殑纭紝姣忎釜涓婚涓彧瀛樺湪涓€涓槦鍒椾篃鏄彲琛岀殑銆備綘鎯充竴涓嬶紝濡傛灉姣忎釜涓婚涓彧瀛樺湪涓€涓槦鍒楋紝杩欎釜闃熷垪涓篃缁存姢鐫€姣忎釜娑堣垂鑰呯粍鐨勬秷璐逛綅缃紝杩欐牱涔熷彲浠ュ仛鍒?nbsp;鍙戝竷璁㈤槄妯″紡 銆傚涓嬪浘銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

浣嗘槸锛岃繖鏍锋垜鐢熶骇鑰呮槸涓嶆槸鍙兘鍚戜竴涓槦鍒楀彂閫佹秷鎭紵鍙堝洜涓洪渶瑕佺淮鎶ゆ秷璐逛綅缃墍浠ヤ竴涓槦鍒楀彧鑳藉搴斾竴涓秷璐硅€呯粍涓殑娑堣垂鑰咃紝杩欐牱鏄笉鏄叾浠栫殑 Consumer 灏辨病鏈夌敤姝︿箣鍦颁簡锛熶粠杩欎袱涓搴︽潵璁诧紝骞跺彂搴︿竴涓嬪瓙灏卞皬浜嗗緢澶氥€?/p>

鎵€浠ユ€荤粨鏉ヨ锛?code class="mq-234">RocketMQ 閫氳繃浣跨敤鍦ㄤ竴涓?nbsp;Topic 涓厤缃涓槦鍒楀苟涓旀瘡涓槦鍒楃淮鎶ゆ瘡涓秷璐硅€呯粍鐨勬秷璐逛綅缃?/strong> 瀹炵幇浜?nbsp;涓婚妯″紡/鍙戝竷璁㈤槄妯″紡 銆?/p>

RocketMQ鐨勬灦鏋勫浘

璁插畬浜嗘秷鎭ā鍨嬶紝鎴戜滑鐞嗚В璧?nbsp;RocketMQ 鐨勬妧鏈灦鏋勮捣鏉ュ氨瀹规槗澶氫簡銆?/p>

RocketMQ 鎶€鏈灦鏋勪腑鏈夊洓澶ц鑹?nbsp;NameServer 銆?code class="mq-245">Broker 銆?code class="mq-246">Producer 銆?code class="mq-247">Consumer 銆傛垜鏉ュ悜澶у鍒嗗埆瑙i噴涓€涓嬭繖鍥涗釜瑙掕壊鏄共鍟ョ殑銆?/p>

  • Broker锛氫富瑕佽礋璐f秷鎭殑瀛樺偍銆佹姇閫掑拰鏌ヨ浠ュ強鏈嶅姟楂樺彲鐢ㄤ繚璇併€傝鐧戒簡灏辨槸娑堟伅闃熷垪鏈嶅姟鍣ㄥ槢锛岀敓浜ц€呯敓浜ф秷鎭埌 Broker 锛屾秷璐硅€呬粠 Broker 鎷夊彇娑堟伅骞舵秷璐广€?/p>

    杩欓噷锛屾垜杩樺緱鏅強涓€涓嬪叧浜?nbsp;Broker 銆?code class="mq-255">Topic 鍜?闃熷垪鐨勫叧绯汇€備笂闈㈡垜璁茶В浜?nbsp;Topic 鍜岄槦鍒楃殑鍏崇郴鈥斺€斾竴涓?nbsp;Topic 涓瓨鍦ㄥ涓槦鍒楋紝閭d箞杩欎釜 Topic 鍜岄槦鍒楀瓨鏀惧湪鍝憿锛?/p>

    涓€涓?nbsp;Topic 鍒嗗竷鍦ㄥ涓?nbsp;Broker涓婏紝涓€涓?nbsp;Broker 鍙互閰嶇疆澶氫釜 Topic 锛屽畠浠槸澶氬澶氱殑鍏崇郴銆?/p>

    濡傛灉鏌愪釜 Topic 娑堟伅閲忓緢澶э紝搴旇缁欏畠澶氶厤缃嚑涓槦鍒?涓婃枃涓彁鍒颁簡鎻愰珮骞跺彂鑳藉姏)锛屽苟涓?nbsp;灏介噺澶氬垎甯冨湪涓嶅悓 Broker 涓婏紝浠ュ噺杞绘煇涓?nbsp;Broker 鐨勫帇鍔?/strong> 銆?/p>

    Topic 娑堟伅閲忛兘姣旇緝鍧囧寑鐨勬儏鍐典笅锛屽鏋滄煇涓?nbsp;broker 涓婄殑闃熷垪瓒婂锛屽垯璇?nbsp;broker 鍘嬪姏瓒婂ぇ銆?/p>

    鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鎵€浠ヨ鎴戜滑闇€瑕侀厤缃涓狟roker銆?/p>

  • NameServer锛氫笉鐭ラ亾浣犱滑鏈夋病鏈夋帴瑙﹁繃 ZooKeeper 鍜?nbsp;Spring Cloud 涓殑 Eureka 锛屽畠鍏跺疄涔熸槸涓€涓?nbsp;娉ㄥ唽涓績 锛屼富瑕佹彁渚涗袱涓姛鑳斤細Broker绠$悊 鍜?nbsp;璺敱淇℃伅绠$悊 銆傝鐧戒簡灏辨槸 Broker 浼氬皢鑷繁鐨勪俊鎭敞鍐屽埌 NameServer 涓紝姝ゆ椂 NameServer 灏卞瓨鏀句簡寰堝 Broker 鐨勪俊鎭?Broker鐨勮矾鐢辫〃)锛屾秷璐硅€呭拰鐢熶骇鑰呭氨浠?nbsp;NameServer 涓幏鍙栬矾鐢辫〃鐒跺悗鐓х潃璺敱琛ㄧ殑淇℃伅鍜屽搴旂殑 Broker 杩涜閫氫俊(鐢熶骇鑰呭拰娑堣垂鑰呭畾鏈熶細鍚?nbsp;NameServer 鍘绘煡璇㈢浉鍏崇殑 Broker 鐨勪俊鎭?銆?/p>

  • Producer锛氭秷鎭彂甯冪殑瑙掕壊锛屾敮鎸佸垎甯冨紡闆嗙兢鏂瑰紡閮ㄧ讲銆傝鐧戒簡灏辨槸鐢熶骇鑰呫€?/p>

  • Consumer锛氭秷鎭秷璐圭殑瑙掕壊锛屾敮鎸佸垎甯冨紡闆嗙兢鏂瑰紡閮ㄧ讲銆傛敮鎸佷互push鎺紝pull鎷変袱绉嶆ā寮忓娑堟伅杩涜娑堣垂銆傚悓鏃朵篃鏀寔闆嗙兢鏂瑰紡鍜屽箍鎾柟寮忕殑娑堣垂锛屽畠鎻愪緵瀹炴椂娑堟伅璁㈤槄鏈哄埗銆傝鐧戒簡灏辨槸娑堣垂鑰呫€?/p>

鍚畬浜嗕笂闈㈢殑瑙i噴浣犲彲鑳戒細瑙夊緱锛岃繖鐜╂剰濂界畝鍗曘€備笉灏辨槸杩欐牱鐨勪箞锛?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍡紵浣犲彲鑳戒細鍙戠幇涓€涓棶棰橈紝杩欒€佸浼?nbsp;NameServer 骞插暐鐢ㄧ殑锛岃繖涓嶅浣欏悧锛熺洿鎺?nbsp;Producer 銆?code class="mq-305">Consumer 鍜?nbsp;Broker 鐩存帴杩涜鐢熶骇娑堟伅锛屾秷璐规秷鎭笉灏卞ソ浜嗕箞锛?/p>

浣嗘槸锛屾垜浠笂鏂囨彁鍒拌繃 Broker 鏄渶瑕佷繚璇侀珮鍙敤鐨勶紝濡傛灉鏁翠釜绯荤粺浠呬粎闈犵潃涓€涓?nbsp;Broker 鏉ョ淮鎸佺殑璇濓紝閭d箞杩欎釜 Broker 鐨勫帇鍔涗細涓嶄細寰堝ぇ锛熸墍浠ユ垜浠渶瑕佷娇鐢ㄥ涓?nbsp;Broker 鏉ヤ繚璇?nbsp;璐熻浇鍧囪  銆?/p>

濡傛灉璇达紝鎴戜滑鐨勬秷璐硅€呭拰鐢熶骇鑰呯洿鎺ュ拰澶氫釜 Broker 鐩歌繛锛岄偅涔堝綋 Broker 淇敼鐨勬椂鍊欏繀瀹氫細鐗佃繛鐫€姣忎釜鐢熶骇鑰呭拰娑堣垂鑰咃紝杩欐牱灏变細浜х敓鑰﹀悎闂锛岃€?nbsp;NameServer 娉ㄥ唽涓績灏辨槸鐢ㄦ潵瑙e喅杩欎釜闂鐨勩€?/p>

濡傛灉杩樹笉鏄緢鐞嗚В鐨勮瘽锛屽彲浠ュ幓鐪嬫垜浠嬬粛 Spring Cloud 鐨勯偅绡囨枃绔狅紝鍏朵腑浠嬬粛浜?nbsp;Eureka 娉ㄥ唽涓績銆?/p>

褰撶劧锛?code class="mq-322">RocketMQ 涓殑鎶€鏈灦鏋勮偗瀹氫笉姝㈠墠闈㈤偅涔堢畝鍗曪紝鍥犱负涓婇潰鍥句腑鐨勫洓涓鑹查兘鏄渶瑕佸仛闆嗙兢鐨勩€傛垜缁欏嚭涓€寮犲畼缃戠殑鏋舵瀯鍥撅紝澶у灏濊瘯鐞嗚В涓€涓嬨€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍏跺疄鍜屾垜浠渶寮€濮嬬敾鐨勯偅寮犱篂涓愮増鐨勬灦鏋勫浘涔熸病浠€涔堝尯鍒紝涓昏鏄竴浜涚粏鑺備笂鐨勫樊鍒€傚惉鎴戠粏缁嗛亾鏉ヰ煠ㄣ€?/p>

绗竴銆佹垜浠殑 Broker 鍋氫簡闆嗙兢骞朵笖杩樿繘琛屼簡涓讳粠閮ㄧ讲 锛岀敱浜庢秷鎭垎甯冨湪鍚勪釜 Broker 涓婏紝涓€鏃︽煇涓?nbsp;Broker 瀹曟満锛屽垯璇?code class="mq-331">Broker 涓婄殑娑堟伅璇诲啓閮戒細鍙楀埌褰卞搷銆傛墍浠?nbsp;Rocketmq 鎻愪緵浜?nbsp;master/slave 鐨勭粨鏋勶紝salve 瀹氭椂浠?nbsp;master 鍚屾鏁版嵁(鍚屾鍒风洏鎴栬€呭紓姝ュ埛鐩?锛屽鏋?nbsp;master 瀹曟満锛?span class="mq-337">鍒?nbsp;slave 鎻愪緵娑堣垂鏈嶅姟锛屼絾鏄笉鑳藉啓鍏ユ秷鎭?/strong> (鍚庨潰鎴戣繕浼氭彁鍒板摝)銆?/p>

绗簩銆佷负浜嗕繚璇?nbsp;HA 锛屾垜浠殑 NameServer 涔熷仛浜嗛泦缇ら儴缃诧紝浣嗘槸璇锋敞鎰忓畠鏄?nbsp;鍘讳腑蹇冨寲 鐨勩€備篃灏辨剰鍛崇潃瀹冩病鏈変富鑺傜偣锛屼綘鍙互寰堟槑鏄惧湴鐪嬪嚭 NameServer 鐨勬墍鏈夎妭鐐规槸娌℃湁杩涜 Info Replicate 鐨勶紝鍦?nbsp;RocketMQ 涓槸閫氳繃 鍗曚釜Broker鍜屾墍鏈塏ameServer淇濇寔闀胯繛鎺?/strong> 锛屽苟涓斿湪姣忛殧30绉?nbsp;Broker 浼氬悜鎵€鏈?nbsp;Nameserver 鍙戦€佸績璺筹紝蹇冭烦鍖呭惈浜嗚嚜韬殑 Topic 閰嶇疆淇℃伅锛岃繖涓楠ゅ氨瀵瑰簲杩欎笂闈㈢殑 Routing Info 銆?/p>

绗笁銆佸湪鐢熶骇鑰呴渶瑕佸悜 Broker 鍙戦€佹秷鎭殑鏃跺€欙紝闇€瑕佸厛浠?nbsp;NameServer 鑾峰彇鍏充簬 Broker 鐨勮矾鐢变俊鎭?/strong>锛岀劧鍚庨€氳繃 杞 鐨勬柟娉曞幓鍚戞瘡涓槦鍒椾腑鐢熶骇鏁版嵁浠ヨ揪鍒?nbsp;璐熻浇鍧囪  鐨勬晥鏋溿€?/p>

绗洓銆佹秷璐硅€呴€氳繃 NameServer 鑾峰彇鎵€鏈?nbsp;Broker 鐨勮矾鐢变俊鎭悗锛屽悜 Broker 鍙戦€?nbsp;Pull 璇锋眰鏉ヨ幏鍙栨秷鎭暟鎹€?code class="mq-363">Consumer 鍙互浠ヤ袱绉嶆ā寮忓惎鍔ㄢ€斺€?nbsp;骞挎挱锛圔roadcast锛夊拰闆嗙兢锛圕luster锛?/strong>銆傚箍鎾ā寮忎笅锛屼竴鏉℃秷鎭細鍙戦€佺粰 鍚屼竴涓秷璐圭粍涓殑鎵€鏈夋秷璐硅€?/strong> 锛岄泦缇ゆā寮忎笅娑堟伅鍙細鍙戦€佺粰涓€涓秷璐硅€呫€?/p>

濡備綍瑙e喅 椤哄簭娑堣垂銆侀噸澶嶆秷璐?/span>

鍏跺疄锛岃繖浜涗笢瑗块兘鏄垜鍦ㄤ粙缁嶆秷鎭槦鍒楀甫鏉ョ殑涓€浜涘壇浣滅敤鐨勬椂鍊欐彁鍒扮殑锛屼篃灏辨槸璇达紝杩欎簺闂涓嶄粎浠呮寕閽╀簬 RocketMQ 锛岃€屾槸搴旇姣忎釜娑堟伅涓棿浠堕兘闇€瑕佸幓瑙e喅鐨勩€?/p>

鍦ㄤ笂闈㈡垜浠嬬粛 RocketMQ 鐨勬妧鏈灦鏋勭殑鏃跺€欐垜宸茬粡鍚戜綘灞曠ず浜?nbsp;瀹冩槸濡備綍淇濊瘉楂樺彲鐢ㄧ殑 锛岃繖閲屼笉娑夊強杩愮淮鏂归潰鐨勬惌寤猴紝濡傛灉浣犳劅鍏磋叮鍙互鑷繁鍘诲畼缃戜笂鐓х潃渚嬪瓙鎼缓灞炰簬浣犺嚜宸辩殑 RocketMQ 闆嗙兢銆?/p>

鍏跺疄 Kafka 鐨勬灦鏋勫熀鏈拰 RocketMQ 绫讳技锛屽彧鏄畠娉ㄥ唽涓績浣跨敤浜?nbsp;Zookeeper 銆佸畠鐨?nbsp;鍒嗗尯 灏辩浉褰撲簬 RocketMQ 涓殑 闃熷垪 銆傝繕鏈変竴浜涘皬缁嗚妭涓嶅悓浼氬湪鍚庨潰鎻愬埌銆?/p>

椤哄簭娑堣垂

鍦ㄤ笂闈㈢殑鎶€鏈灦鏋勪粙缁嶄腑锛屾垜浠凡缁忕煡閬撲簡 RocketMQ 鍦ㄤ富棰樹笂鏄棤搴忕殑銆佸畠鍙湁鍦ㄩ槦鍒楀眰闈㈡墠鏄繚璇佹湁搴?/strong> 鐨勩€?/p>

杩欏張鎵埌涓や釜姒傚康鈥斺€?span class="mq-388">鏅€氶『搴?/strong> 鍜?nbsp;涓ユ牸椤哄簭 銆?/p>

鎵€璋撴櫘閫氶『搴忔槸鎸?娑堣垂鑰呴€氳繃 鍚屼竴涓秷璐归槦鍒楁敹鍒扮殑娑堟伅鏄湁椤哄簭鐨?/strong> 锛屼笉鍚屾秷鎭槦鍒楁敹鍒扮殑娑堟伅鍒欏彲鑳芥槸鏃犻『搴忕殑銆傛櫘閫氶『搴忔秷鎭湪 Broker 閲嶅惎鎯呭喌涓嬩笉浼氫繚璇佹秷鎭『搴忔€?/strong> (鐭殏鏃堕棿) 銆?/p>

鎵€璋撲弗鏍奸『搴忔槸鎸?娑堣垂鑰呮敹鍒扮殑 鎵€鏈夋秷鎭?/strong> 鍧囨槸鏈夐『搴忕殑銆備弗鏍奸『搴忔秷鎭?nbsp;鍗充娇鍦ㄥ紓甯告儏鍐典笅涔熶細淇濊瘉娑堟伅鐨勯『搴忔€?/strong> 銆?/p>

浣嗘槸锛屼弗鏍奸『搴忕湅璧锋潵铏藉ソ锛屽疄鐜板畠鍙細浠樺嚭宸ㄥぇ鐨勪唬浠枫€傚鏋滀綘浣跨敤涓ユ牸椤哄簭妯″紡锛?code class="mq-398">Broker 闆嗙兢涓彧瑕佹湁涓€鍙版満鍣ㄤ笉鍙敤锛屽垯鏁翠釜闆嗙兢閮戒笉鍙敤銆備綘杩樼敤鍟ワ紵鐜板湪涓昏鍦烘櫙涔熷氨鍦?nbsp;binlog 鍚屾銆?/p>

涓€鑸€岃█锛屾垜浠殑 MQ 閮芥槸鑳藉蹇嶇煭鏆傜殑涔卞簭锛屾墍浠ユ帹鑽愪娇鐢ㄦ櫘閫氶『搴忔ā寮忋€?/p>

閭d箞锛屾垜浠幇鍦ㄤ娇鐢ㄤ簡 鏅€氶『搴忔ā寮?/strong> 锛屾垜浠粠涓婇潰瀛︿範鐭ラ亾浜嗗湪 Producer 鐢熶骇娑堟伅鐨勬椂鍊欎細杩涜杞(鍙栧喅浣犵殑璐熻浇鍧囪 绛栫暐)鏉ュ悜鍚屼竴涓婚鐨勪笉鍚屾秷鎭槦鍒楀彂閫佹秷鎭€傞偅涔堝鏋滄鏃舵垜鏈夊嚑涓秷鎭垎鍒槸鍚屼竴涓鍗曠殑鍒涘缓銆佹敮浠樸€佸彂璐э紝鍦ㄨ疆璇㈢殑绛栫暐涓嬭繖 涓変釜娑堟伅浼氳鍙戦€佸埌涓嶅悓闃熷垪 锛屽洜涓哄湪涓嶅悓鐨勯槦鍒楁鏃跺氨鏃犳硶浣跨敤 RocketMQ 甯︽潵鐨勯槦鍒楁湁搴忕壒鎬ф潵淇濊瘉娑堟伅鏈夊簭鎬т簡銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

閭d箞锛屾€庝箞瑙e喅鍛紵

鍏跺疄寰堢畝鍗曪紝鎴戜滑闇€瑕佸鐞嗙殑浠呬粎鏄皢鍚屼竴璇箟涓嬬殑娑堟伅鏀惧叆鍚屼竴涓槦鍒?姣斿杩欓噷鏄悓涓€涓鍗?锛岄偅鎴戜滑灏卞彲浠ヤ娇鐢?nbsp;Hash鍙栨ā娉?/strong> 鏉ヤ繚璇佸悓涓€涓鍗曞湪鍚屼竴涓槦鍒椾腑灏辫浜嗐€?/p>

閲嶅娑堣垂

emmm锛屽氨涓や釜瀛椻€斺€?nbsp;骞傜瓑 銆傚湪缂栫▼涓竴涓?em class="mq-416">骞傜瓑 鎿嶄綔鐨勭壒鐐规槸鍏朵换鎰忓娆℃墽琛屾墍浜х敓鐨勫奖鍝嶅潎涓庝竴娆℃墽琛岀殑褰卞搷鐩稿悓銆傛瘮濡傝锛岃繖涓椂鍊欐垜浠湁涓€涓鍗曠殑澶勭悊绉垎鐨勭郴缁燂紝姣忓綋鏉ヤ竴涓秷鎭殑鏃跺€欏畠灏辫礋璐d负鍒涘缓杩欎釜璁㈠崟鐨勭敤鎴风殑绉垎鍔犱笂鐩稿簲鐨勬暟鍊笺€傚彲鏄湁涓€娆★紝娑堟伅闃熷垪鍙戦€佺粰璁㈠崟绯荤粺 FrancisQ 鐨勮鍗曚俊鎭紝鍏惰姹傛槸缁?FrancisQ 鐨勭Н鍒嗗姞涓?500銆備絾鏄Н鍒嗙郴缁熷湪鏀跺埌 FrancisQ 鐨勮鍗曚俊鎭鐞嗗畬鎴愪箣鍚庤繑鍥炵粰娑堟伅闃熷垪澶勭悊鎴愬姛鐨勪俊鎭殑鏃跺€欏嚭鐜颁簡缃戠粶娉㈠姩(褰撶劧杩樻湁寰堝绉嶆儏鍐碉紝姣斿Broker鎰忓閲嶅惎绛夌瓑)锛岃繖鏉″洖搴旀病鏈夊彂閫佹垚鍔熴€?/p>

閭d箞锛屾秷鎭槦鍒楁病鏀跺埌绉垎绯荤粺鐨勫洖搴斾細涓嶄細灏濊瘯閲嶅彂杩欎釜娑堟伅锛熼棶棰樺氨鏉ヤ簡锛屾垜鍐嶅彂杩欎釜娑堟伅锛屼竾涓€瀹冨張缁?FrancisQ 鐨勮处鎴峰姞涓?500 绉垎鎬庝箞鍔炲憿锛?/p>

鎵€浠ユ垜浠渶瑕佺粰鎴戜滑鐨勬秷璐硅€呭疄鐜?nbsp;骞傜瓑 锛屼篃灏辨槸瀵瑰悓涓€涓秷鎭殑澶勭悊缁撴灉锛屾墽琛屽灏戞閮戒笉鍙樸€?/p>

閭d箞濡備綍缁欎笟鍔″疄鐜板箓绛夊憿锛熻繖涓繕鏄渶瑕佺粨鍚堝叿浣撶殑涓氬姟鐨勩€備綘鍙互浣跨敤 鍐欏叆 Redis 鏉ヤ繚璇侊紝鍥犱负 Redis 鐨?nbsp;key 鍜?nbsp;value 灏辨槸澶╃劧鏀寔骞傜瓑鐨勩€傚綋鐒惰繕鏈変娇鐢?nbsp;鏁版嵁搴撴彃鍏ユ硶 锛屽熀浜庢暟鎹簱鐨勫敮涓€閿潵淇濊瘉閲嶅鏁版嵁涓嶄細琚彃鍏ュ鏉°€?/p>

涓嶈繃鏈€涓昏鐨勮繕鏄渶瑕?nbsp;鏍规嵁鐗瑰畾鍦烘櫙浣跨敤鐗瑰畾鐨勮В鍐虫柟妗?/strong> 锛屼綘瑕佺煡閬撲綘鐨勬秷鎭秷璐规槸鍚︽槸瀹屽叏涓嶅彲閲嶅娑堣垂杩樻槸鍙互蹇嶅彈閲嶅娑堣垂鐨勶紝鐒跺悗鍐嶉€夋嫨寮烘牎楠屽拰寮辨牎楠岀殑鏂瑰紡銆傛瘯绔熷湪 CS 棰嗗煙杩樻槸寰堝皯鏈夋妧鏈摱寮圭殑璇存硶銆?/p>

鑰屽湪鏁翠釜浜掕仈缃戦鍩燂紝骞傜瓑涓嶄粎浠呴€傜敤浜庢秷鎭槦鍒楃殑閲嶅娑堣垂闂锛岃繖浜涘疄鐜板箓绛夌殑鏂规硶锛屼篃鍚屾牱閫傜敤浜庯紝鍦ㄥ叾浠栧満鏅腑鏉ヨВ鍐抽噸澶嶈姹傛垨鑰呴噸澶嶈皟鐢ㄧ殑闂 銆傛瘮濡傚皢HTTP鏈嶅姟璁捐鎴愬箓绛夌殑锛?span class="mq-431">瑙e喅鍓嶇鎴栬€匒PP閲嶅鎻愪氦琛ㄥ崟鏁版嵁鐨勯棶棰?/strong> 锛屼篃鍙互灏嗕竴涓井鏈嶅姟璁捐鎴愬箓绛夌殑锛岃В鍐?nbsp;RPC 妗嗘灦鑷姩閲嶈瘯瀵艰嚧鐨?nbsp;閲嶅璋冪敤闂 銆?/p>

鍒嗗竷寮忎簨鍔?/span>

濡備綍瑙i噴鍒嗗竷寮忎簨鍔″憿锛熶簨鍔″ぇ瀹堕兘鐭ラ亾鍚э紵瑕佷箞閮芥墽琛岃涔堥兘涓嶆墽琛?/strong> 銆傚湪鍚屼竴涓郴缁熶腑鎴戜滑鍙互杞绘澗鍦板疄鐜颁簨鍔★紝浣嗘槸鍦ㄥ垎甯冨紡鏋舵瀯涓紝鎴戜滑鏈夊緢澶氭湇鍔℃槸閮ㄧ讲鍦ㄤ笉鍚岀郴缁熶箣闂寸殑锛岃€屼笉鍚屾湇鍔′箣闂村張闇€瑕佽繘琛岃皟鐢ㄣ€傛瘮濡傛鏃舵垜涓嬭鍗曠劧鍚庡鍔犵Н鍒嗭紝濡傛灉淇濊瘉涓嶄簡鍒嗗竷寮忎簨鍔$殑璇濓紝灏变細鍑虹幇A绯荤粺涓嬩簡璁㈠崟锛屼絾鏄疊绯荤粺澧炲姞绉垎澶辫触鎴栬€匒绯荤粺娌℃湁涓嬭鍗曪紝B绯荤粺鍗村鍔犱簡绉垎銆傚墠鑰呭鐢ㄦ埛涓嶅弸濂斤紝鍚庤€呭杩愯惀鍟嗕笉鍒╋紝杩欐槸鎴戜滑閮戒笉鎰挎剰瑙佸埌鐨勩€?/p>

閭d箞锛屽浣曞幓瑙e喅杩欎釜闂鍛紵

濡備粖姣旇緝甯歌鐨勫垎甯冨紡浜嬪姟瀹炵幇鏈?2PC銆乀CC 鍜屼簨鍔℃秷鎭?half 鍗婃秷鎭満鍒?銆傛瘡涓€绉嶅疄鐜伴兘鏈夊叾鐗瑰畾鐨勪娇鐢ㄥ満鏅紝浣嗘槸涔熸湁鍚勮嚜鐨勯棶棰橈紝閮戒笉鏄畬缇庣殑瑙e喅鏂规銆?/p>

鍦?nbsp;RocketMQ 涓娇鐢ㄧ殑鏄?nbsp;浜嬪姟娑堟伅鍔犱笂浜嬪姟鍙嶆煡鏈哄埗 鏉ヨВ鍐冲垎甯冨紡浜嬪姟闂鐨勩€傛垜鐢讳簡寮犲浘锛屽ぇ瀹跺彲浠ュ鐓х潃鍥捐繘琛岀悊瑙c€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍦ㄧ涓€姝ュ彂閫佺殑 half 娑堟伅 锛屽畠鐨勬剰鎬濇槸 鍦ㄤ簨鍔℃彁浜や箣鍓嶏紝瀵逛簬娑堣垂鑰呮潵璇达紝杩欎釜娑堟伅鏄笉鍙鐨?/strong> 銆?/p>

閭d箞锛屽浣曞仛鍒板啓鍏ユ秷鎭絾鏄鐢ㄦ埛涓嶅彲瑙佸憿锛烺ocketMQ浜嬪姟娑堟伅鐨勫仛娉曟槸锛氬鏋滄秷鎭槸half娑堟伅锛屽皢澶囦唤鍘熸秷鎭殑涓婚涓庢秷鎭秷璐归槦鍒楋紝鐒跺悗 鏀瑰彉涓婚 涓篟MQ_SYS_TRANS_HALF_TOPIC銆傜敱浜庢秷璐圭粍鏈闃呰涓婚锛屾晠娑堣垂绔棤娉曟秷璐筯alf绫诲瀷鐨勬秷鎭紝鐒跺悗RocketMQ浼氬紑鍚竴涓畾鏃朵换鍔★紝浠嶵opic涓篟MQ_SYS_TRANS_HALF_TOPIC涓媺鍙栨秷鎭繘琛屾秷璐?/strong>锛屾牴鎹敓浜ц€呯粍鑾峰彇涓€涓湇鍔℃彁渚涜€呭彂閫佸洖鏌ヤ簨鍔$姸鎬佽姹傦紝鏍规嵁浜嬪姟鐘舵€佹潵鍐冲畾鏄彁浜ゆ垨鍥炴粴娑堟伅銆?/p>

浣犲彲浠ヨ瘯鎯充竴涓嬶紝濡傛灉娌℃湁浠庣5姝ュ紑濮嬬殑 浜嬪姟鍙嶆煡鏈哄埗 锛屽鏋滃嚭鐜扮綉璺尝鍔ㄧ4姝ユ病鏈夊彂閫佹垚鍔燂紝杩欐牱灏变細浜х敓 MQ 涓嶇煡閬撴槸涓嶆槸闇€瑕佺粰娑堣垂鑰呮秷璐圭殑闂锛屼粬灏卞儚涓€涓棤澶磋媿铦囦竴鏍枫€傚湪 RocketMQ 涓氨鏄娇鐢ㄧ殑涓婅堪鐨勪簨鍔″弽鏌ユ潵瑙e喅鐨勶紝鑰屽湪 Kafka 涓€氬父鏄洿鎺ユ姏鍑轰竴涓紓甯歌鐢ㄦ埛鏉ヨ嚜琛岃В鍐炽€?/p>

浣犺繕闇€瑕佹敞鎰忕殑鏄紝鍦?nbsp;MQ Server 鎸囧悜绯荤粺B鐨勬搷浣滃凡缁忓拰绯荤粺A涓嶇浉鍏充簡锛屼篃灏辨槸璇村湪娑堟伅闃熷垪涓殑鍒嗗竷寮忎簨鍔℃槸鈥斺€?span class="mq-458">鏈湴浜嬪姟鍜屽瓨鍌ㄦ秷鎭埌娑堟伅闃熷垪鎵嶆槸鍚屼竴涓簨鍔?/strong>銆傝繖鏍蜂篃灏变骇鐢熶簡浜嬪姟鐨?span class="mq-459">鏈€缁堜竴鑷存€?/strong>锛屽洜涓烘暣涓繃绋嬫槸寮傛鐨勶紝姣忎釜绯荤粺鍙淇濊瘉瀹冭嚜宸遍偅涓€閮ㄥ垎鐨勪簨鍔″氨琛屼簡銆?/p>

娑堟伅鍫嗙Н闂

鍦ㄤ笂闈㈡垜浠彁鍒颁簡娑堟伅闃熷垪涓€涓緢閲嶈鐨勫姛鑳解€斺€?span class="mq-464">鍓婂嘲 銆傞偅涔堝鏋滆繖涓嘲鍊煎お澶т簡瀵艰嚧娑堟伅鍫嗙Н鍦ㄩ槦鍒椾腑鎬庝箞鍔炲憿锛?/p>

鍏跺疄杩欎釜闂鍙互灏嗗畠骞夸箟鍖栵紝鍥犱负浜х敓娑堟伅鍫嗙Н鐨勬牴婧愬叾瀹炲氨鍙湁涓や釜鈥斺€旂敓浜ц€呯敓浜уお蹇垨鑰呮秷璐硅€呮秷璐瑰お鎱€?/p>

鎴戜滑鍙互浠庡涓搴﹀幓鎬濊€冭В鍐宠繖涓棶棰橈紝褰撴祦閲忓埌宄板€肩殑鏃跺€欐槸鍥犱负鐢熶骇鑰呯敓浜уお蹇紝鎴戜滑鍙互浣跨敤涓€浜?nbsp;闄愭祦闄嶇骇 鐨勬柟娉曪紝褰撶劧浣犱篃鍙互澧炲姞澶氫釜娑堣垂鑰呭疄渚嬪幓姘村钩鎵╁睍澧炲姞娑堣垂鑳藉姏鏉ュ尮閰嶇敓浜х殑婵€澧炪€傚鏋滄秷璐硅€呮秷璐硅繃鎱㈢殑璇濓紝鎴戜滑鍙互鍏堟鏌?nbsp;鏄惁鏄秷璐硅€呭嚭鐜颁簡澶ч噺鐨勬秷璐归敊璇?/strong> 锛屾垨鑰呮墦鍗颁竴涓嬫棩蹇楁煡鐪嬫槸鍚︽槸鍝竴涓嚎绋嬪崱姝伙紝鍑虹幇浜嗛攣璧勬簮涓嶉噴鏀剧瓑绛夌殑闂銆?/p>

褰撶劧锛屾渶蹇€熻В鍐虫秷鎭爢绉棶棰樼殑鏂规硶杩樻槸澧炲姞娑堣垂鑰呭疄渚嬶紝涓嶈繃 鍚屾椂浣犺繕闇€瑕佸鍔犳瘡涓富棰樼殑闃熷垪鏁伴噺 銆?/p>

鍒繕浜嗗湪 RocketMQ 涓紝涓€涓槦鍒楀彧浼氳涓€涓秷璐硅€呮秷璐?/strong> 锛屽鏋滀綘浠呬粎鏄鍔犳秷璐硅€呭疄渚嬪氨浼氬嚭鐜版垜涓€寮€濮嬬粰浣犵敾鏋舵瀯鍥剧殑閭g鎯呭喌銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

鍥炴函娑堣垂

鍥炴函娑堣垂鏄寚 Consumer 宸茬粡娑堣垂鎴愬姛鐨勬秷鎭紝鐢变簬涓氬姟涓婇渶姹傞渶瑕侀噸鏂版秷璐癸紝鍦?code class="mq-481">RocketMQ 涓紝 Broker 鍦ㄥ悜Consumer 鎶曢€掓垚鍔熸秷鎭悗锛?span class="mq-484">娑堟伅浠嶇劧闇€瑕佷繚鐣?/strong> 銆傚苟涓旈噸鏂版秷璐逛竴鑸槸鎸夌収鏃堕棿缁村害锛屼緥濡傜敱浜?nbsp;Consumer 绯荤粺鏁呴殰锛屾仮澶嶅悗闇€瑕侀噸鏂版秷璐?灏忔椂鍓嶇殑鏁版嵁锛岄偅涔?nbsp;Broker 瑕佹彁渚涗竴绉嶆満鍒讹紝鍙互鎸夌収鏃堕棿缁村害鏉ュ洖閫€娑堣垂杩涘害銆?code class="mq-487">RocketMQ 鏀寔鎸夌収鏃堕棿鍥炴函娑堣垂锛屾椂闂寸淮搴︾簿纭埌姣銆?/p>

杩欐槸瀹樻柟鏂囨。鐨勮В閲婏紝鎴戠洿鎺ョ収鎼繃鏉ュ氨褰撶鏅簡馃榿馃榿馃榿銆?/p>

RocketMQ 鐨勫埛鐩樻満鍒?/span>

涓婇潰鎴戣浜嗛偅涔堝鐨?nbsp;RocketMQ 鐨勬灦鏋勫拰璁捐鍘熺悊锛屼綘鏈夋病鏈夊ソ濂?/p>

鍦?nbsp;Topic 涓殑 闃熷垪鏄互浠€涔堟牱鐨勫舰寮忓瓨鍦ㄧ殑锛?/strong>

闃熷垪涓殑娑堟伅鍙堟槸濡備綍杩涜瀛樺偍鎸佷箙鍖栫殑鍛紵

鎴戝湪涓婃枃涓彁鍒扮殑 鍚屾鍒风洏 鍜?nbsp;寮傛鍒风洏 鍙堟槸浠€涔堝憿锛熷畠浠細缁欐寔涔呭寲甯︽潵浠€涔堟牱鐨勫奖鍝嶅憿锛?/p>

涓嬮潰鎴戝皢缁欎綘浠竴涓€瑙i噴銆?/p>

鍚屾鍒风洏鍜屽紓姝ュ埛鐩?/span>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

濡備笂鍥炬墍绀猴紝鍦ㄥ悓姝ュ埛鐩樹腑闇€瑕佺瓑寰呬竴涓埛鐩樻垚鍔熺殑 ACK 锛屽悓姝ュ埛鐩樺 MQ 娑堟伅鍙潬鎬ф潵璇存槸涓€绉嶄笉閿欑殑淇濋殰锛屼絾鏄?nbsp;鎬ц兘涓婁細鏈夎緝澶у奖鍝?/strong> 锛屼竴鑸湴閫傜敤浜庨噾铻嶇瓑鐗瑰畾涓氬姟鍦烘櫙銆?/p>

鑰屽紓姝ュ埛鐩樺線寰€鏄紑鍚竴涓嚎绋嬪幓寮傛鍦版墽琛屽埛鐩樻搷浣溿€傛秷鎭埛鐩橀噰鐢ㄥ悗鍙板紓姝ョ嚎绋嬫彁浜ょ殑鏂瑰紡杩涜锛?nbsp;闄嶄綆浜嗚鍐欏欢杩?/strong> 锛屾彁楂樹簡 MQ 鐨勬€ц兘鍜屽悶鍚愰噺锛屼竴鑸€傜敤浜庡鍙戦獙璇佺爜绛夊浜庢秷鎭繚璇佽姹備笉澶珮鐨勪笟鍔″満鏅€?/p>

涓€鑸湴锛?span class="mq-514">寮傛鍒风洏鍙湁鍦?nbsp;Broker 鎰忓瀹曟満鐨勬椂鍊欎細涓㈠け閮ㄥ垎鏁版嵁锛屼綘鍙互璁剧疆 Broker 鐨勫弬鏁?nbsp;FlushDiskType 鏉ヨ皟鏁翠綘鐨勫埛鐩樼瓥鐣?ASYNC_FLUSH 鎴栬€?SYNC_FLUSH)銆?/p>

鍚屾澶嶅埗鍜屽紓姝ュ鍒?/span>

涓婇潰鐨勫悓姝ュ埛鐩樺拰寮傛鍒风洏鏄湪鍗曚釜缁撶偣灞傞潰鐨勶紝鑰屽悓姝ュ鍒跺拰寮傛澶嶅埗涓昏鏄寚鐨?nbsp;Borker 涓讳粠妯″紡涓嬶紝涓昏妭鐐硅繑鍥炴秷鎭粰瀹㈡埛绔殑鏃跺€欐槸鍚﹂渶瑕佸悓姝ヤ粠鑺傜偣銆?/p>

  • 鍚屾澶嶅埗锛氫篃鍙?鈥滃悓姝ュ弻鍐欌€濓紝涔熷氨鏄锛?span class="mq-523">鍙湁娑堟伅鍚屾鍙屽啓鍒颁富浠庣粨鐐逛笂鏃舵墠杩斿洖鍐欏叆鎴愬姛 銆?/p>

  • 寮傛澶嶅埗锛?nbsp;娑堟伅鍐欏叆涓昏妭鐐逛箣鍚庡氨鐩存帴杩斿洖鍐欏叆鎴愬姛 銆?/p>

鐒惰€岋紝寰堝浜嬫儏鏄病鏈夊畬缇庣殑鏂规鐨勶紝灏辨瘮濡傛垜浠繘琛屾秷鎭啓鍏ョ殑鑺傜偣瓒婂灏辨洿鑳戒繚璇佹秷鎭殑鍙潬鎬э紝浣嗘槸闅忎箣鐨勬€ц兘涔熶細涓嬮檷锛屾墍浠ラ渶瑕佺▼搴忓憳鏍规嵁鐗瑰畾涓氬姟鍦烘櫙鍘婚€夋嫨閫傚簲鐨勪富浠庡鍒舵柟妗堛€?/p>

閭d箞锛?span class="mq-527">寮傛澶嶅埗浼氫笉浼氫篃鍍忓紓姝ュ埛鐩橀偅鏍峰奖鍝嶆秷鎭殑鍙潬鎬у憿锛?/strong>

绛旀鏄笉浼氱殑锛屽洜涓轰袱鑰呭氨鏄笉鍚岀殑姒傚康锛屽浜庢秷鎭彲闈犳€ф槸閫氳繃涓嶅悓鐨勫埛鐩樼瓥鐣ヤ繚璇佺殑锛岃€屽儚寮傛鍚屾澶嶅埗绛栫暐浠呬粎鏄奖鍝嶅埌浜?nbsp;鍙敤鎬?/strong> 銆備负浠€涔堝憿锛熷叾涓昏鍘熷洜鏄?nbsp;RocketMQ 鏄笉鏀寔鑷姩涓讳粠鍒囨崲鐨勶紝褰撲富鑺傜偣鎸傛帀涔嬪悗锛岀敓浜ц€呭氨涓嶈兘鍐嶇粰杩欎釜涓昏妭鐐圭敓浜ф秷鎭簡銆?/p>

姣斿杩欎釜鏃跺€欓噰鐢ㄥ紓姝ュ鍒剁殑鏂瑰紡锛屽湪涓昏妭鐐硅繕鏈彂閫佸畬闇€瑕佸悓姝ョ殑娑堟伅鐨勬椂鍊欎富鑺傜偣鎸傛帀浜嗭紝杩欎釜鏃跺€欎粠鑺傜偣灏卞皯浜嗕竴閮ㄥ垎娑堟伅銆備絾鏄鏃剁敓浜ц€呮棤娉曞啀缁欎富鑺傜偣鐢熶骇娑堟伅浜嗭紝娑堣垂鑰呭彲浠ヨ嚜鍔ㄥ垏鎹㈠埌浠庤妭鐐硅繘琛屾秷璐?/strong>(浠呬粎鏄秷璐?锛屾墍浠ュ湪涓昏妭鐐规寕鎺夌殑鏃堕棿鍙細浜х敓涓讳粠缁撶偣鐭殏鐨勬秷鎭笉涓€鑷寸殑鎯呭喌锛岄檷浣庝簡鍙敤鎬э紝鑰屽綋涓昏妭鐐归噸鍚箣鍚庯紝浠庤妭鐐归偅閮ㄥ垎鏈潵寰楀強澶嶅埗鐨勬秷鎭繕浼氱户缁鍒躲€?/p>

鍦ㄥ崟涓讳粠鏋舵瀯涓紝濡傛灉涓€涓富鑺傜偣鎸傛帀浜嗭紝閭d箞涔熷氨鎰忓懗鐫€鏁翠釜绯荤粺涓嶈兘鍐嶇敓浜т簡銆傞偅涔堣繖涓彲鐢ㄦ€х殑闂鑳藉惁瑙e喅鍛紵涓€涓富浠庝笉琛岄偅灏卞涓富浠庣殑鍛?/strong>锛屽埆蹇樹簡鍦ㄦ垜浠渶鍒濈殑鏋舵瀯鍥句腑锛屾瘡涓?nbsp;Topic 鏄垎甯冨湪涓嶅悓 Broker 涓殑銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

浣嗘槸杩欑澶嶅埗鏂瑰紡鍚屾牱涔熶細甯︽潵涓€涓棶棰橈紝閭e氨鏄棤娉曚繚璇?nbsp;涓ユ牸椤哄簭 銆傚湪涓婃枃涓垜浠彁鍒颁簡濡備綍淇濊瘉鐨勬秷鎭『搴忔€ф槸閫氳繃灏嗕竴涓涔夌殑娑堟伅鍙戦€佸湪鍚屼竴涓槦鍒椾腑锛屼娇鐢?nbsp;Topic 涓嬬殑闃熷垪鏉ヤ繚璇侀『搴忔€х殑銆傚鏋滄鏃舵垜浠富鑺傜偣A璐熻矗鐨勬槸璁㈠崟A鐨勪竴绯诲垪璇箟娑堟伅锛岀劧鍚庡畠鎸備簡锛岃繖鏍峰叾浠栬妭鐐规槸鏃犳硶浠f浛涓昏妭鐐笰鐨勶紝濡傛灉鎴戜滑浠绘剰鑺傜偣閮藉彲浠ュ瓨鍏ヤ换浣曟秷鎭紝閭e氨娌℃湁椤哄簭鎬у彲瑷€浜嗐€?/p>

鑰屽湪 RocketMQ 涓噰鐢ㄤ簡 Dledger 瑙e喅杩欎釜闂銆備粬瑕佹眰鍦ㄥ啓鍏ユ秷鎭殑鏃跺€欙紝瑕佹眰鑷冲皯娑堟伅澶嶅埗鍒板崐鏁颁互涓婄殑鑺傜偣涔嬪悗锛屾墠缁欏饧剧杩斿洖鍐欌紛鎴愬姛锛屽苟涓斿畠鏄絸鎸侀€氳繃閫変妇鏉ュ姩鎬佸垏鎹富鑺傜偣鐨勩€傝繖閲屾垜灏变笉灞曞紑璇存槑浜嗭紝璇昏€呭彲浠ヨ嚜宸卞幓浜嗚В銆?/p>

涔熶笉鏄 Dledger 鏄釜瀹岀編鐨勬柟妗堬紝鑷冲皯鍦?nbsp;Dledger 閫変妇杩囩▼涓槸鏃犳硶鎻愪緵鏈嶅姟鐨勶紝鑰屼笖浠栧繀椤昏浣跨敤涓変釜鑺傜偣鎴栦互涓婏紝濡傛灉澶氭暟鑺傜偣鍚屾椂鎸傛帀浠栦篃鏄棤娉曚繚璇佸彲鐢ㄦ€х殑锛岃€屼笖瑕佹眰娑堟伅澶嶅埗鏉夸功浠ヤ笂鑺傜偣鐨勬晥鐜囧拰鐩存帴寮傛澶嶅埗杩樻槸鏈変竴瀹氱殑宸窛鐨勩€?/p>

瀛樺偍鏈哄埗

杩樿寰椾笂闈㈡垜浠竴寮€濮嬬殑涓変釜闂鍚楋紵鍒拌繖閲岀涓変釜闂宸茬粡瑙e喅浜嗐€?/p>

浣嗘槸锛屽湪 Topic 涓殑 闃熷垪鏄互浠€涔堟牱鐨勫舰寮忓瓨鍦ㄧ殑锛熼槦鍒椾腑鐨勬秷鎭張鏄浣曡繘琛屽瓨鍌ㄦ寔涔呭寲鐨勫憿锛?/strong> 杩樻湭瑙e喅锛屽叾瀹炶繖閲屾秹鍙婂埌浜?nbsp;RocketMQ 鏄浣曡璁″畠鐨勫瓨鍌ㄧ粨鏋勪簡銆傛垜棣栧厛鎯冲ぇ瀹朵粙缁?nbsp;RocketMQ 娑堟伅瀛樺偍鏋舵瀯涓殑涓夊ぇ瑙掕壊鈥斺€?code class="mq-559">CommitLog 銆?code class="mq-560">ConsumeQueue 鍜?nbsp;IndexFile 銆?/p>

  • CommitLog锛?nbsp;娑堟伅涓讳綋浠ュ強鍏冩暟鎹殑瀛樺偍涓讳綋锛屽瓨鍌?nbsp;Producer 绔啓鍏ョ殑娑堟伅涓讳綋鍐呭,娑堟伅鍐呭涓嶆槸瀹氶暱鐨勩€傚崟涓枃浠跺ぇ灏忛粯璁?G 锛屾枃浠跺悕闀垮害涓?0浣嶏紝宸﹁竟琛ラ浂锛屽墿浣欎负璧峰鍋忕Щ閲忥紝姣斿00000000000000000000浠h〃浜嗙涓€涓枃浠讹紝璧峰鍋忕Щ閲忎负0锛屾枃浠跺ぇ灏忎负1G=1073741824锛涘綋绗竴涓枃浠跺啓婊′簡锛岀浜屼釜鏂囦欢涓?0000000001073741824锛岃捣濮嬪亸绉婚噺涓?073741824锛屼互姝ょ被鎺ㄣ€傛秷鎭富瑕佹槸椤哄簭鍐欏叆鏃ュ織鏂囦欢锛屽綋鏂囦欢婊′簡锛屽啓鍏ヤ笅涓€涓枃浠躲€?/p>

  • ConsumeQueue锛氭秷鎭秷璐归槦鍒楋紝寮曞叆鐨勭洰鐨勪富瑕佹槸鎻愰珮娑堟伅娑堣垂鐨勬€ц兘(鎴戜滑鍐嶅墠闈篃璁蹭簡)锛岀敱浜?code class="mq-569">RocketMQ 鏄熀浜庝富棰?nbsp;Topic 鐨勮闃呮ā寮忥紝娑堟伅娑堣垂鏄拡瀵逛富棰樿繘琛岀殑锛屽鏋滆閬嶅巻 commitlog 鏂囦欢涓牴鎹?nbsp;Topic 妫€绱㈡秷鎭槸闈炲父浣庢晥鐨勩€?code class="mq-573">Consumer 鍗冲彲鏍规嵁 ConsumeQueue 鏉ユ煡鎵惧緟娑堣垂鐨勬秷鎭€傚叾涓紝ConsumeQueue锛堥€昏緫娑堣垂闃熷垪锛?span class="mq-576">浣滀负娑堣垂娑堟伅鐨勭储寮?/strong>锛屼繚瀛樹簡鎸囧畾 Topic 涓嬬殑闃熷垪娑堟伅鍦?nbsp;CommitLog 涓殑**璧峰鐗╃悊鍋忕Щ閲?nbsp;offset **锛屾秷鎭ぇ灏?nbsp;size 鍜屾秷鎭?nbsp;Tag 鐨?nbsp;HashCode 鍊笺€?span class="mq-583">`consumequeue` 鏂囦欢鍙互鐪嬫垚鏄熀浜?`topic` 鐨?`commitlog` 绱㈠紩鏂囦欢锛屾晠 consumequeue 鏂囦欢澶圭殑缁勭粐鏂瑰紡濡備笅锛歵opic/queue/file涓夊眰缁勭粐缁撴瀯锛屽叿浣撳瓨鍌ㄨ矾寰勪负锛?HOME/store/consumequeue/{topic}/{queueId}/{fileName}銆傚悓鏍?nbsp;consumequeue 鏂囦欢閲囧彇瀹氶暱璁捐锛屾瘡涓€涓潯鐩叡20涓瓧鑺傦紝鍒嗗埆涓?瀛楄妭鐨?nbsp;commitlog 鐗╃悊鍋忕Щ閲忋€?瀛楄妭鐨勬秷鎭暱搴︺€?瀛楄妭tag hashcode锛屽崟涓枃浠剁敱30W涓潯鐩粍鎴愶紝鍙互鍍忔暟缁勪竴鏍烽殢鏈鸿闂瘡涓€涓潯鐩紝姣忎釜 ConsumeQueue鏂囦欢澶у皬绾?.72M锛?/p>

  • IndexFile锛?nbsp;IndexFile锛堢储寮曟枃浠讹級鎻愪緵浜嗕竴绉嶅彲浠ラ€氳繃key鎴栨椂闂村尯闂存潵鏌ヨ娑堟伅鐨勬柟娉曘€傝繖閲屽彧鍋氱鏅笉鍋氳缁嗕粙缁嶃€?/p>

鎬荤粨鏉ヨ锛屾暣涓秷鎭瓨鍌ㄧ殑缁撴瀯锛屾渶涓昏鐨勫氨鏄?nbsp;CommitLoq 鍜?nbsp;ConsumeQueue 銆傝€?nbsp;ConsumeQueue 浣犲彲浠ュぇ姒傜悊瑙d负 Topic 涓殑闃熷垪銆?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

RocketMQ 閲囩敤鐨勬槸 娣峰悎鍨嬬殑瀛樺偍缁撴瀯 锛屽嵆涓?nbsp;Broker 鍗曚釜瀹炰緥涓嬫墍鏈夌殑闃熷垪鍏辩敤涓€涓棩蹇楁暟鎹枃浠舵潵瀛樺偍娑堟伅銆傛湁鎰忔€濈殑鏄湪鍚屾牱楂樺苟鍙戠殑 Kafka 涓細涓烘瘡涓?nbsp;Topic 鍒嗛厤涓€涓瓨鍌ㄦ枃浠躲€傝繖灏辨湁鐐圭被浼间簬鎴戜滑鏈変竴澶у爢涔﹂渶瑕佽涓婁功鏋讹紝RockeMQ 鏄笉鍒嗕功鐨勭绫荤洿鎺ユ垚鎵圭殑濉炰笂鍘荤殑锛岃€?nbsp;Kafka 鏄皢涔︽湰鏀惧叆鎸囧畾鐨勫垎绫诲尯鍩熺殑銆?/p>

鑰?nbsp;RocketMQ 涓轰粈涔堣杩欎箞鍋氬憿锛熷師鍥犳槸 鎻愰珮鏁版嵁鐨勫啓鍏ユ晥鐜?/strong> 锛屼笉鍒?nbsp;Topic 鎰忓懗鐫€鎴戜滑鏈夋洿澶х殑鍑犵巼鑾峰彇 鎴愭壒 鐨勬秷鎭繘琛屾暟鎹啓鍏ワ紝浣嗕篃浼氬甫鏉ヤ竴涓夯鐑﹀氨鏄鍙栨秷鎭殑鏃跺€欓渶瑕侀亶鍘嗘暣涓ぇ鏂囦欢锛岃繖鏄潪甯歌€楁椂鐨勩€?/p>

鎵€浠ワ紝鍦?nbsp;RocketMQ 涓張浣跨敤浜?nbsp;ConsumeQueue 浣滀负姣忎釜闃熷垪鐨勭储寮曟枃浠舵潵 鎻愬崌璇诲彇娑堟伅鐨勬晥鐜?/strong>銆傛垜浠彲浠ョ洿鎺ユ牴鎹槦鍒楃殑娑堟伅搴忓彿锛岃绠楀嚭绱㈠紩鐨勫叏灞€浣嶇疆锛堢储寮曞簭鍙?绱㈠紩鍥哄畾饣撳害20锛夛紝鐒跺悗鐩存帴璇诲彇杩欐潯绱㈠紩锛屽啀鏍规嵁绱㈠紩涓褰曠殑娑堟伅鐨勫叏灞€浣嶇疆锛屾壘鍒版秷鎭€?/p>

璁插埌杩欓噷锛屼綘鍙兘瀵?nbsp;RockeMQ 鐨勫瓨鍌ㄦ灦鏋勮繕鏈変簺妯$硦锛屾病浜嬶紝鎴戜滑缁撳悎鐫€鍥炬潵鐞嗚В涓€涓嬨€?/p>

鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨

emmm锛屾槸涓嶆槸鏈変竴鐐瑰鏉傪煠o紝鐪嬭嫳鏂囧浘鐗囧拰鑻辨枃鏂囨。鐨勬椂鍊欏氨涓嶈鎬傦紝纭潃澶寸毊寰€涓嬬湅灏辫銆?/p>

濡傛灉涓婇潰娌$湅鎳傜殑璇昏€呬竴瀹氳璁ょ湡鐪嬩笅闈㈢殑娴佺▼鍒嗘瀽锛?/p>

棣栧厛锛屽湪鏈€涓婇潰鐨勯偅涓€鍧楀氨鏄垜鍒氬垰璁茬殑浣犵幇鍦ㄥ彲浠ョ洿鎺?nbsp;鎶?nbsp;ConsumerQueue 鐞嗚В涓?nbsp;Queue銆?/p>

鍦ㄥ浘涓渶宸﹁竟璇存槑浜?nbsp;绾㈣壊鏂瑰潡 浠h〃琚啓鍏ョ殑娑堟伅锛岃櫄绾挎柟鍧椾唬琛ㄧ瓑寰呰鍐欏叆鐨勩€傚乏杈圭殑鐢熶骇鑰呭彂閫佹秷鎭細鎸囧畾 Topic 銆?code class="mq-629">QueueId 鍜屽叿浣撴秷鎭唴瀹癸紝鑰屽湪 Broker 涓浣犳槸鍝棬瀛愭秷鎭紝浠栫洿鎺?**鍏ㄩ儴椤哄簭瀛樺偍鍒颁簡 CommitLog **銆傝€屾牴鎹敓浜ц€呮寚瀹氱殑 Topic 鍜?nbsp;QueueId 灏嗚繖鏉℃秷鎭湰韬湪 CommitLog 鐨勫亸绉?offset)锛屾秷鎭湰韬ぇ灏忥紝鍜宼ag鐨刪ash鍊煎瓨鍏ュ搴旂殑 ConsumeQueue 绱㈠紩鏂囦欢涓€傝€屽湪姣忎釜闃熷垪涓兘淇濆瓨浜?nbsp;ConsumeOffset 鍗虫瘡涓秷璐硅€呯粍鐨勬秷璐逛綅缃?鎴戝湪鏋舵瀯閭i噷鎻愬埌浜嗭紝蹇樹簡鐨勫悓瀛﹀彲浠ュ洖鍘荤湅涓€涓?锛岃€屾秷璐硅€呮媺鍙栨秷鎭繘琛屾秷璐圭殑鏃跺€欏彧闇€瑕佹牴鎹?nbsp;ConsumeOffset 鑾峰彇涓嬩竴涓湭琚秷璐圭殑娑堟伅灏辫浜嗐€?/p>

涓婅堪灏辨槸鎴戝浜庢暣涓秷鎭瓨鍌ㄦ灦鏋勭殑澶ф鐞嗚В(杩欓噷涓嶆秹鍙婂埌涓€浜涚粏鑺傝璁猴紝姣斿绋€鐤忕储寮曠瓑绛夐棶棰?锛屽笇鏈涘浣犳湁甯姪銆?/p>

鍥犱负鏈変竴涓煡璇嗙偣鍥犱负鍐欏棬浜嗗繕璁蹭簡锛屾兂鎯冲湪鍝噷鍔犱篃涓嶅ソ锛屾墍浠ユ垜鐣欑粰澶у鍘绘€濊€凁煠旔煠斾竴涓嬪惂銆?/p>

涓轰粈涔?nbsp;CommitLog 鏂囦欢瑕佽璁℃垚鍥哄畾澶у皬鐨勯暱搴﹀憿锛熸彁閱掞細鍐呭瓨鏄犲皠鏈哄埗銆?/p>

鎬荤粨

鎬荤畻鎶婅繖绡囧崥瀹㈠啓瀹屼簡銆傛垜璁茬殑浣犱滑杩樿寰楀悧馃槄锛?/p>

杩欑瘒鏂囩珷涓垜涓昏鎯冲ぇ瀹朵粙缁嶄簡

  1. 娑堟伅闃熷垪鍑虹幇鐨勫師鍥?/span>

  2. 娑堟伅闃熷垪鐨勪綔鐢?寮傛锛岃В鑰︼紝鍓婂嘲)

  3. 娑堟伅闃熷垪甯︽潵鐨勪竴绯诲垪闂(娑堟伅鍫嗙Н銆侀噸澶嶆秷璐广€侀『搴忔秷璐广€佸垎甯冨紡浜嬪姟绛夌瓑)

  4. 娑堟伅闃熷垪鐨勪袱绉嶆秷鎭ā鍨嬧€斺€旈槦鍒楀拰涓婚妯″紡

  5. 鍒嗘瀽浜?nbsp;RocketMQ 鐨勬妧鏈灦鏋?NameServer 銆?code class="mq-654">Broker 銆?code class="mq-655">Producer 銆?code class="mq-656">Comsumer)

  6. 缁撳悎 RocketMQ 鍥炵瓟浜嗘秷鎭槦鍒楀壇浣滅敤鐨勮В鍐虫柟妗?/p>

  7. 浠嬬粛浜?nbsp;RocketMQ 鐨勫瓨鍌ㄦ満鍒跺拰鍒风洏绛栫暐銆?/p>

绛夌瓑銆傘€傘€?/p>

濡傛灉鍠滄鍙互鐐硅禐鍝燄煈嶐煈嶐煈嶃€?/p>

鏂囩珷鎺ㄨ崘


以上是关于鍐掔潃鏈熸湯鎸傜鐨勯闄╀篃瑕佺粰浣犵湅鐨勬秷鎭槦鍒楀拰RocketMQ鍏ラ棬鎬荤粨的主要内容,如果未能解决你的问题,请参考以下文章

.net寰俊鍏紬鍙峰紑鍙戔€斺€旀秷鎭笌浜嬩欢

鎯宠缂栫▼浣滃搧涓婃。娆★紝浣犵湡鐨勯渶瑕佸浼氭暟鎹彲瑙嗗寲

Jmeter 缂栧啓鎺ュ彛娴嬭瘯鐢ㄤ緥閬囧埌鐨勯棶棰樺強瑙e喅鍔炴硶

馃檲 濡備綍闅愯棌浣犵殑鐑洿鏂?bundle 鏂囦欢锛?/a>

涓簡婧愮爜鐨勬瘨锛岀粰浣犱竴鍓壇鑽?/a>