每個(gè)Topic都有一個(gè)所屬的Broker姐赡,所以讀寫都是通過該Broker進(jìn)行的盛霎。這樣提供了很多的好處绞绒。
Broker可以將日志的尾部緩存在內(nèi)存中,這意味著Broker可以不需要BookKeeper的情況下為讀取尾部數(shù)據(jù)的操作提供服務(wù)十籍。這樣避免了網(wǎng)絡(luò)的開銷以及Bookie上可能的磁盤讀取。
Broker也知道Last Add Confirmed條目的ID唇礁。這樣可以跟蹤那條消息是最后一個(gè)安全持久化的消息勾栗。
當(dāng)Broker的緩存中沒有消息時(shí)將從消息所在的Fragment使用的一個(gè)Bookie請求數(shù)據(jù)。這樣可能必須承擔(dān)額外的網(wǎng)絡(luò)開銷和可能的磁盤讀取成本盏筐。
因此围俘,我們從高層次描述了消息的邏輯和物理結(jié)構(gòu)以及Pulsar集群中的不同參與者以及它們的關(guān)系。