在咱們上一篇Kafka教程中,咱們討論了Kafka Docker。今天,咱們將討論Kafka Workflow。此外,咱們將詳細介紹Pub-Sub Messaging的工做流程以及Queue Messaging / Consumer Group的工做流程。此外,咱們將看到ZooKeeper在Apache Kafka中的做用。
那麼,讓咱們從Kafka Workflow開始吧。docker
在Kafka Workflow中,Kafka是主題的集合,它們被分紅一個或多個分區,而分區是一系列消息,其中index標識每條消息(咱們也稱爲偏移量)。可是,在Kafka集羣中,全部數據都是分區的不相交聯合。傳入消息出如今分區的末尾,所以消費者能夠讀取它們。此外,經過將消息複製到不一樣的代理,它能夠保持持久性。
讓咱們修改Apache Kafka架構Kafka
以很是快速,可靠,持久,容錯和零停機的方式提供基於Pub-sub和隊列的消息傳遞系統。此外,生產者將消息發送到主題,而且消費者能夠根據他們的願望選擇任何一個消息系統。服務器
在Apache Kafka中,Pub-Sub Messaging的逐步工做流程是:架構
具備相同組ID的一組Kafka消費者能夠在隊列消息傳遞系統中訂閱主題而不是單個消費者。可是,對於全部使用者具備相同的組ID,訂閱主題的用戶被視爲單個組並共享消息。該系統的工做流程是:學習
學習Apache Kafka Streams | 流處理拓撲ui
Apache Zookeeper充當Kafka代理和消費者之間的協調接口。此外,咱們能夠說它是一個分佈式配置和同步服務。基本上,ZooKeeper集羣與Kafka服務器共享信息。此外,Kafka在ZooKeeper Kafka中存儲基本元數據信息,例如主題,代理,消費者偏移(隊列讀取器)等。
點擊連接,瞭解有關Zookeeper在Kafka中的角色的更多信息
此外,Kafka Zookeeper / broker的故障不會影響Kafka集羣。這是由於存儲在ZooKeeper中的關鍵信息會在其集合中複製。而後Kafka在ZooKeeper從新啓動時恢復狀態,致使Kafka零停機。然而,在領導失敗的狀況下,Zookeeper還在Kafka經紀人之間進行領導選舉。
所以,這徹底是關於Apache Kafka Workflow。但願你喜歡咱們的解釋。spa
所以,咱們已經看到了Apache Kafka Workflow的概念。此外,在這個Kafka Workflow教程中,咱們討論了Pub-Sub Messaging系統的Workflow,以及Kafka Queue Messaging系統的工做流程。最後,咱們看到了Zookeeper在Apache Kafka中的做用。不過,若是對Kafka Workflow有任何疑問,請隨時在評論部分詢問。
另請參閱 -
具備薪資趨勢的Apache Kafka職業範圍
供參考.net