卡夫卡文檔指出:卡夫卡如何幫助實現排隊抽象以及發佈 - 訂閱?
消費者標榜自己與消費者的組名,併發布到一個話題每個消息每個訂閱用戶組內交付給消費者的一個實例。消費者實例可以在單獨的進程中或在單獨的機器上。
如果所有的消費者實例具有相同的消費羣體,那麼這個作品就像在消費者傳統的隊列平衡負載。
如果所有的消費者實例有不同的消費羣體,那麼這就像發佈 - 訂閱和所有的消息被廣播到所有消費者。
我已經對此幾個疑點:
1)爲什麼會發布的消息去到消費羣體的單個消費者實例?消費者是否有責任從分區中讀取數據? 去什麼意思呢?
2)對特定主題感興趣的消費者應該只從他們感興趣的分區中讀取。消費者羣體的相關性是什麼?
3)這是如何幫助實現隊列和發佈者 - 子程序的抽象?
但我仍不明白這是如何幫助隊列和發佈者訂閱者的抽象。 :/ –
消息發佈到消費者組中的一個消費者實例的事實的相關性是什麼? –
如果你有一個很大的負載,你可以讓多個消費者並行地使用和處理這些信息,在這種情況下,只有一個消費者處理消息是有價值的(你不希望所有的消費者處理相同的消息,這不是你如何分割工作)。 在發佈消息的發佈者 - 訂閱者模式中,您希望所有訂閱者都知道此消息,通過創建只有1個消費者的消費者組來做到這一點。 – Nautilus