【🔒 Message Queue - Kafka】串流時代的超入門簡介

更新於 2024/05/17閱讀時間約 3 分鐘
raw-image


訊息的即時傳遞已然成為現代社會的趨勢了, 而扮演中樞平台的系統架構功能也漸趨複雜完整, Kafka是一個事件流平台, 正好滿足串流時代之下的即時訊息傳遞架構, 因此我們有必要深入來學習這套事件流平台, 不論是自動化、金融交易、IOT、物流…皆離不開即時的需求, 所以就讓我們蹲好馬步來好好的學習一番吧!

關鍵功能有哪些?

  • 寫入及訂閱事件流。
  • 可靠的儲存事件流。
  • 處理即時或過去的事件流。
  • 分散式、可擴展、容錯、安全。

解決了什麼問題?

如同「【Message Queue】 井然有序的排隊機制 - 基本介紹」所介紹的, 我們看看下圖, 左邊的情境, 當客人越來越多時, 後面的客人都必須等待廚師做好餐點才能做其他事情, 而我們再來看看右邊的情境, 每個客人只要將菜單交給櫃台之後就能去做其他事情了, 而廚師們依據櫃台的菜單做菜, 直到餐點完成後客人依序取餐, 這樣的方式讓整個過程更有效率的運作, 客人寫菜單後自由活動, 廚師依單作業, 各自角色獨立耦合, 減少等待的時間耗費, 中間櫃台負責收跟送。

raw-image


而Kafka就是扮演著櫃台的角色, 擔任客人與廚師之間的橋樑, 讓彼此之間能夠更有效率的作業。

基礎架構與角色

raw-image


核心重點來了, 我們深入使用kafka之前先來鳥瞰一下整體的架構設計以及各個組件扮演的角色, 往後才能夠更快的理解細部功能的設計與用途。

生產者(Producer)與消費者(Consumer)

這兩個角色是Message Queue架構之下的基本角色, 總是要有人消費才會有生產, 生產者(producer)專注於生產訊息並丟往kafka, 而消費者(consumer)則負責消化這些訊息並根據訊息的內容處理任務。

事件(Event)與訊息(Message)

raw-image


通知兒子去買菜就是一個「事件」的起源, 買什麼菜則是「訊息」的內容,而中間的訊息傳遞橋樑可以是電話、留言紙條、Line訊息…, 有沒有覺得Message Queue的概念套到生活上就通了呢?

主題(Topics)與分區(Partition)

raw-image


主題(Topics)的部份我們可以理解為「新聞」, 分區(Partition)的部份則可以理解為「各個地區」, 透過主題(Topics)與分區(Partition)讓我們將資料分流到不同節點, 進而提高吞吐量(【資訊軟體知識】認識延遲、吞吐量、頻寬的差別)。

一個主題可以有多個分區, 每個分區依序紀錄生產者送過來的訊息, 關於分區的派送策略我們後續會另外撰寫一篇來進行詳細的介紹, 這邊我們僅需要知道主題(Topics)與分區(Partition)的基本概念即可。

代理器(Broker)與群集(Cluster)

raw-image


單台Kafka為一個代理器(Broker), 而群集(Cluster)裡面可以有多個Broker, 負責分配 partitions與監控Broker, 進而實現負載平衡、資料備份、故障轉移…等功能。

結語

這個篇章我們先帶到Kafka的基本元件概念即可, 否則一次塞太多知識也難以消化, 我們對於整體架構有一定的基本認識之後, 接下來將針對各個元件內容細部的拆解與說明。

avatar-img
116會員
261內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
阿Han的沙龍 的其他內容
Frames per second簡稱FPS, 也就是每秒幾個幀數的意思, 平常我們看到的影片背後其實都是一張張圖片的組成, 而這一幅畫面就是影片的每一幀。 由於人眼的特殊生理結構, 畫面的幀數只要高於每秒10 - 12張的時候就會認為是連貫的, 這也就是為什麼電影膠片是一格格的拍攝出來, 但是藉
關於FastAPI這個框架為什麼有什麼樣的優勢, 為什麼會這麼熱門? 歡迎參考「【Python 技術選型】如何選出適合的API框架呢?」。 站在巨人的肩膀上 FastAPI主要基於以下兩個重要的元件組成, Starlette與Pydantic, 就讓我們來看看兩者的關係吧! 安裝 pip
點陣圖 點陣圖是由許多方格像素組成的圖片, 因此我們常常在將圖片放大時會呈現像是馬賽克的狀況, 假設期望圖片越清晰那所需要的像素會較多個, 因此空間耗用量也相對較大。 常見的格式有: .JPG .PNG .GIF .BMP .TIFF等格式。 繪製程式碼: 向量圖 向量
繼上次分享的「【🔒 影像辨識 - 影像處理】Ep.1 關於影像的基本單位, 相信我們對於影像的儲存應該有了基本的認識了, 那麼接下來我們會需要的是了解顏色的組成。 我們除了在文章裡講述概念之外, 也會提供實作的數位作品分享給大家, 請大家根據範例學習與練習。 關於顏色 灰階的時代 早期尚未
歡迎來到「阿Han的軟體心法實戰營 - 影像處理」系列的文章區,我們會針對影像處理的相關知識、開發技巧進行分享,並教你手把手用程式寫出屬於自己的影像處理程式, 當然也會包括AI模型訓練的部分,就讓我們一起來探索影像處理的領域吧! 在進入影像辨識的世界之前, 我們先來了解一下關於解析度的基本概念吧!
這篇文章主要討論了Toyz超派事件背後的訊息與軟體研發的關聯性,並提出瞭如何減少被批評、以及如何讓機器充當QA的建議。另外也推薦了一些關於良好寫作習慣的主題。通過AI協助排除繁瑣事務,著重於高品質的人際互動,減少分歧與紛爭。
Frames per second簡稱FPS, 也就是每秒幾個幀數的意思, 平常我們看到的影片背後其實都是一張張圖片的組成, 而這一幅畫面就是影片的每一幀。 由於人眼的特殊生理結構, 畫面的幀數只要高於每秒10 - 12張的時候就會認為是連貫的, 這也就是為什麼電影膠片是一格格的拍攝出來, 但是藉
關於FastAPI這個框架為什麼有什麼樣的優勢, 為什麼會這麼熱門? 歡迎參考「【Python 技術選型】如何選出適合的API框架呢?」。 站在巨人的肩膀上 FastAPI主要基於以下兩個重要的元件組成, Starlette與Pydantic, 就讓我們來看看兩者的關係吧! 安裝 pip
點陣圖 點陣圖是由許多方格像素組成的圖片, 因此我們常常在將圖片放大時會呈現像是馬賽克的狀況, 假設期望圖片越清晰那所需要的像素會較多個, 因此空間耗用量也相對較大。 常見的格式有: .JPG .PNG .GIF .BMP .TIFF等格式。 繪製程式碼: 向量圖 向量
繼上次分享的「【🔒 影像辨識 - 影像處理】Ep.1 關於影像的基本單位, 相信我們對於影像的儲存應該有了基本的認識了, 那麼接下來我們會需要的是了解顏色的組成。 我們除了在文章裡講述概念之外, 也會提供實作的數位作品分享給大家, 請大家根據範例學習與練習。 關於顏色 灰階的時代 早期尚未
歡迎來到「阿Han的軟體心法實戰營 - 影像處理」系列的文章區,我們會針對影像處理的相關知識、開發技巧進行分享,並教你手把手用程式寫出屬於自己的影像處理程式, 當然也會包括AI模型訓練的部分,就讓我們一起來探索影像處理的領域吧! 在進入影像辨識的世界之前, 我們先來了解一下關於解析度的基本概念吧!
這篇文章主要討論了Toyz超派事件背後的訊息與軟體研發的關聯性,並提出瞭如何減少被批評、以及如何讓機器充當QA的建議。另外也推薦了一些關於良好寫作習慣的主題。通過AI協助排除繁瑣事務,著重於高品質的人際互動,減少分歧與紛爭。
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
《貓博物館》遊戲適合喜歡2D橫向卷軸、恐怖獵奇、詭譎插畫風格、點擊解謎、很多貓的玩家遊玩。
Thumbnail
從2021年底開始我有一股動力想要紀錄自己的一些行為,從紙本筆記本到後來變成了電子版本,使用了幾款電子手帳順道了解自己的習慣認知。 從每日雜事紀錄,轉變成心情日記,再後來簡化成任務形式。 寫著一段時間又遇到類似拖延症的瓶頸,剛好這次交換書群組裡有一本是《原子習慣》。
Thumbnail
信度,不光應用在句子、寫作,還有日常對話、你的人生。
…某方面來說,昨天我的回話算是一種可以句點對方的同時又不會有攻擊性的溫和型內容,這樣子除了給對方一點台階下也可以是給我自己更多時間整理自己。 仔細思考後發現這樣子實際上我是正在藉由這樣的方式訓練自己擁有泰然自若的心以及柔軟的身段。
Thumbnail
此文內容為無雷介紹 & 防雷心得。遊戲平台連結附於最底可以END查看。遊戲特色:體感、遊戲中的選擇可以隨心所欲、角色全程語音、劇情扣人心弦、如同現實一樣的事件來互動、CG質量高、語言繁中、音樂好聽、感受送禮不手軟、享受觀察他人
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
《貓博物館》遊戲適合喜歡2D橫向卷軸、恐怖獵奇、詭譎插畫風格、點擊解謎、很多貓的玩家遊玩。
Thumbnail
從2021年底開始我有一股動力想要紀錄自己的一些行為,從紙本筆記本到後來變成了電子版本,使用了幾款電子手帳順道了解自己的習慣認知。 從每日雜事紀錄,轉變成心情日記,再後來簡化成任務形式。 寫著一段時間又遇到類似拖延症的瓶頸,剛好這次交換書群組裡有一本是《原子習慣》。
Thumbnail
信度,不光應用在句子、寫作,還有日常對話、你的人生。
…某方面來說,昨天我的回話算是一種可以句點對方的同時又不會有攻擊性的溫和型內容,這樣子除了給對方一點台階下也可以是給我自己更多時間整理自己。 仔細思考後發現這樣子實際上我是正在藉由這樣的方式訓練自己擁有泰然自若的心以及柔軟的身段。
Thumbnail
此文內容為無雷介紹 & 防雷心得。遊戲平台連結附於最底可以END查看。遊戲特色:體感、遊戲中的選擇可以隨心所欲、角色全程語音、劇情扣人心弦、如同現實一樣的事件來互動、CG質量高、語言繁中、音樂好聽、感受送禮不手軟、享受觀察他人