java B2B2C 原始碼多租戶電子商城系統-Kafka基本使用介紹

小兵2147775633發表於2018-12-14

一、Kafka概述 Kafka是一種分散式的,基於釋出/訂閱的訊息系統。主要設計目標如下:

需要JAVA Spring Cloud大型企業分散式微服務雲構建的B2B2C電子商務平臺原始碼請加企鵝求求:二一四七七七五六三三

以時間複雜度為O(1)的方式提供訊息持久化能力,並保證即使對TB級以上資料也能保證常數時間的訪問效能 高吞吐率。即使在非常廉價的商用機器上也能做到單機支援每秒100K條訊息的傳輸 支援Kafka Server間的訊息分割槽,及分散式訊息消費,同時保證每個partition內的訊息順序傳輸 同時支援離線資料處理和實時資料處理

二、Kafka的架構和核心概念

java B2B2C 原始碼多租戶電子商城系統-Kafka基本使用介紹

可以看出來:

1.Kafka可以作為叢集執行在一臺或者多個伺服器上面;

2.Kafka叢集可以分類地儲存記錄流,以打標籤的方式,就是採用topics,每個broker可以打個topic,這樣能保證消費者可以根據topic選擇性消費;

3.每個記錄由Key、Value、timestamp構成。

Kafka四個核心的API

1.ProducerAPI:允許一個應用向一個或多個topic裡釋出記錄流;

2.ConsumerAPI:允許一個應用訂閱一個或多個topics,處理topic裡的資料流,就相當於消費;

3.StreamAPI:允許應用扮演流處理的作用,從一個或多個topic裡消費資料流,然後產生輸出流資料到其他一個或多個topic裡,對輸入流資料有效傳輸到輸出口;

4.ConnectorAPI:允許執行和構建一個可重複利用的生產者和消費者,能將kafka的topic與其他存在的應用和資料庫裝置相連線,比如連結一個實時資料庫,可以捕捉到每張表的變化。

這四個API,主要應用在IDEA上對應用程式的開發中,通過程式碼的形式管理Kafka。在第四部分將會對前兩個API寫個簡單DEMO演示。

Java B2B2C多使用者商城 springboot架構

相關文章