Topic

主題,從邏輯上講一個(gè)Topic就是一個(gè)Queue,即一個(gè)隊(duì)列;從存儲上講,一個(gè)Topic存儲了一類相同的消息,是一類消息的集合。比如一個(gè)名稱為trade.order.queue的Topic里面存的都是訂單相關(guān)的消息。

 

Partition

分區(qū)。分區(qū)是存在于服務(wù)端,內(nèi)部保持順序、且順序不可變更的一個(gè)隊(duì)列,用于存儲消息。分區(qū)可能不應(yīng)該出現(xiàn)在消息領(lǐng)域內(nèi),在使用消息中間件發(fā)送和消費(fèi)時(shí),實(shí)際上用戶是感受不到分區(qū)這個(gè)概念的。下面這幅圖便于大家去理解分區(qū):

一個(gè)Topic存儲消息時(shí)會分為多個(gè)Partition,每個(gè)Partition內(nèi)消息是有順序的。至于為什么需要將Topic劃分成按照Partition存儲,在以后設(shè)計(jì)和實(shí)現(xiàn)部分會解釋。

 

網(wǎng)友評論