Kafka 最初是為海量日志處理而構(gòu)建的。它保留消息直到過期,并讓消費(fèi)者按照自己的節(jié)奏提取消息。與它的前輩不同,Kafka 不僅僅是一個消息隊列,它還是一個適用于各種情況的開源事件流平臺。
1. 日志處理與分析
- 下圖顯示了典型的 ELK(Elastic-Logstash-Kibana)堆棧。Kafka 有效地從每個實例收集日志流。
- ElasticSearch 使用來自 Kafka 的日志并為其建立索引。Kibana 在 ElasticSearch 之上提供了搜索和可視化 UI。
2. 推薦中的數(shù)據(jù)流
- 大型電子商務(wù)網(wǎng)站使用過去的行為和相似的用戶來計算產(chǎn)品推薦。
- 下圖展示了推薦系統(tǒng)的工作原理。Kafka 傳輸原始點(diǎn)擊流數(shù)據(jù),F(xiàn)link 對其進(jìn)行處理,模型訓(xùn)練則使用來自數(shù)據(jù)湖的聚合數(shù)據(jù)。
- 這使得能夠持續(xù)改進(jìn)每個用戶的推薦的相關(guān)性。Kafka 的另一個重要用例是實時點(diǎn)擊流分析。
3. 系統(tǒng)監(jiān)控與報警
- 與日志分析系統(tǒng)類似,我們需要收集系統(tǒng)指標(biāo)以進(jìn)行監(jiān)控和故障排除。
- 區(qū)別在于指標(biāo)是結(jié)構(gòu)化數(shù)據(jù),而日志是非結(jié)構(gòu)化文本。指標(biāo)數(shù)據(jù)發(fā)送到 Kafka 并在 Flink 中聚合。聚合數(shù)據(jù)由實時監(jiān)控儀表板和警報系統(tǒng)使用。
4. CDC(變更數(shù)據(jù)捕獲)
- 更改數(shù)據(jù)捕獲 (CDC) 將數(shù)據(jù)庫更改流式傳輸?shù)狡渌到y(tǒng)以進(jìn)行復(fù)制或緩存/索引更新。
- Kafka 還是構(gòu)建數(shù)據(jù)管道的絕佳工具,這意味著您可以使用它從各種來源獲取數(shù)據(jù)、應(yīng)用處理規(guī)則并將數(shù)據(jù)存儲在倉庫、數(shù)據(jù)湖或數(shù)據(jù)網(wǎng)格中。
- 例如,在下圖中,事務(wù)日志發(fā)送到 Kafka 并由 ElasticSearch、Redis 和輔助數(shù)據(jù)庫攝取。
文章來源:http://www.zghlxwxcb.cn/news/detail-716009.html
5. 系統(tǒng)遷移
- 升級遺留服務(wù)具有挑戰(zhàn)性——舊的語言、復(fù)雜的邏輯和缺乏測試。我們可以通過利用消息傳遞中間件來降低風(fēng)險。
- 在下圖中,為了升級下圖中的訂單服務(wù),我們更新舊的訂單服務(wù)以使用來自 Kafka 的輸入并將結(jié)果寫入 ORDER 主題。新訂單服務(wù)使用相同的輸入并將結(jié)果寫入 ORDERNEW 主題。
- 調(diào)節(jié)服務(wù)比較 ORDER 和 ORDERNEW。如果它們相同,則新服務(wù)通過測試。
文章來源地址http://www.zghlxwxcb.cn/news/detail-716009.html
6. 事件溯源
- 事件溯源就是捕獲一系列事件中狀態(tài)的變化。通常使用 Kafka 作為主要事件存儲。如果發(fā)生任何故障、回滾或需要重建狀態(tài),您可以隨時重新應(yīng)用 Kafka 中的事件。
7. 消息傳遞
- Kafka 最好和最常見的用例之一是作為消息隊列。Kafka 為您提供了一個可靠且可擴(kuò)展的消息隊列,可以處理大量數(shù)據(jù)。
- 我們可以將您的消息組織成“主題”,這意味著您將每條消息發(fā)布到一個特定主題,而另一方面,消費(fèi)者將訂閱一個或多個主題并消費(fèi)其中的消息。
- 微服務(wù)之間解耦通信的最大優(yōu)點(diǎn)是,您可以隨時向這些事件添加新服務(wù),而無需增加系統(tǒng)的復(fù)雜性或不必更改任何源代碼。
8. 提交日志
- Kafka 可以充當(dāng)分布式系統(tǒng)的一種外部提交日志。日志有助于在節(jié)點(diǎn)之間復(fù)制數(shù)據(jù),并充當(dāng)故障節(jié)點(diǎn)恢復(fù)數(shù)據(jù)的重新同步機(jī)制。
- Kafka 中的日志壓縮功能有助于支持這種用法。
到了這里,關(guān)于分享8個分布式Kafka的使用場景的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!