AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當(dāng)前位置:首頁(yè) > 科技  > 軟件

Kafka 在分布式系統(tǒng)中的七大應(yīng)用場(chǎng)景

來(lái)源: 責(zé)編: 時(shí)間:2023-10-25 15:48:58 321觀看
導(dǎo)讀Kafka 介紹Kafka 是一個(gè)開(kāi)源的分布式流式平臺(tái),它可以處理大量的實(shí)時(shí)數(shù)據(jù),并提供高吞吐量,低延遲,高可靠性和高可擴(kuò)展性。Kafka 的核心組件包括生產(chǎn)者(Producer),消費(fèi)者(Consumer),主題(Topic),分區(qū)(Partition),副本(Replica),日志(Log),偏移

Kafka 介紹

Kafka 是一個(gè)開(kāi)源的分布式流式平臺(tái),它可以處理大量的實(shí)時(shí)數(shù)據(jù),并提供高吞吐量,低延遲,高可靠性和高可擴(kuò)展性。Kafka 的核心組件包括生產(chǎn)者(Producer),消費(fèi)者(Consumer),主題(Topic),分區(qū)(Partition),副本(Replica),日志(Log),偏移量(Offset)和代理(Broker)。Kafka 的主要特點(diǎn)有:jvT28資訊網(wǎng)——每日最新資訊28at.com

  • 數(shù)據(jù)磁盤(pán)持久化:Kafka 將消息直接寫(xiě)入到磁盤(pán),而不依賴(lài)于內(nèi)存緩存,從而提高了數(shù)據(jù)的持久性和容錯(cuò)性。
  • 零拷貝:Kafka 利用操作系統(tǒng)的零拷貝特性,減少了數(shù)據(jù)在內(nèi)核空間和用戶(hù)空間之間的復(fù)制,降低了 CPU 和內(nèi)存的開(kāi)銷(xiāo)。
  • 數(shù)據(jù)批量發(fā)送:Kafka 支持生產(chǎn)者和消費(fèi)者批量發(fā)送和接收數(shù)據(jù),減少了網(wǎng)絡(luò)請(qǐng)求的次數(shù)和開(kāi)銷(xiāo)。
  • 數(shù)據(jù)壓縮:Kafka 支持多種壓縮算法,如 gzip,snappy,lz4 等,可以有效地減少數(shù)據(jù)的大小和傳輸時(shí)間。
  • 主題劃分為多個(gè)分區(qū):Kafka 將一個(gè)主題劃分為多個(gè)分區(qū),每個(gè)分區(qū)是一個(gè)有序的消息隊(duì)列,分區(qū)之間可以并行地讀寫(xiě)數(shù)據(jù),提高了系統(tǒng)的并發(fā)能力。
  • 分區(qū)副本機(jī)制:Kafka 為每個(gè)分區(qū)設(shè)置多個(gè)副本,分布在不同的代理節(jié)點(diǎn)上,保證了數(shù)據(jù)的冗余和一致性。其中一個(gè)副本被選為領(lǐng)導(dǎo)者(Leader),負(fù)責(zé)處理該分區(qū)的讀寫(xiě)請(qǐng)求,其他副本為追隨者(Follower),負(fù)責(zé)從領(lǐng)導(dǎo)者同步數(shù)據(jù),并在領(lǐng)導(dǎo)者失效時(shí)進(jìn)行故障轉(zhuǎn)移。

Kafka 最初是為分布式系統(tǒng)中海量日志處理而設(shè)計(jì)的。它可以通過(guò)持久化功能將消息保存到磁盤(pán)直到過(guò)期,并讓消費(fèi)者按照自己的節(jié)奏提取消息。與它的前輩不同(RabbitMQ、ActiveMQ),Kafka 不僅僅是一個(gè)消息隊(duì)列,它還是一個(gè)開(kāi)源的分布式流處理平臺(tái)。jvT28資訊網(wǎng)——每日最新資訊28at.com

Kafka 的應(yīng)用場(chǎng)景

Kafka 作為一款熱門(mén)的消息隊(duì)列中間件,具備高效可靠的消息異步傳遞機(jī)制,主要用于不同系統(tǒng)間的數(shù)據(jù)交流和傳遞。下面給大家介紹一下 Kafka 在分布式系統(tǒng)中的 7 個(gè)常用應(yīng)用場(chǎng)景。jvT28資訊網(wǎng)——每日最新資訊28at.com

  • 日志處理與分析
  • 推薦數(shù)據(jù)流
  • 系統(tǒng)監(jiān)控與報(bào)警
  • CDC(數(shù)據(jù)變更捕獲)
  • 系統(tǒng)遷移
  • 事件溯源
  • 消息隊(duì)列

1. 日志處理與分析

日志收集是 Kafka 最初的設(shè)計(jì)目標(biāo)之一,也是最常見(jiàn)的應(yīng)用場(chǎng)景之一。可以用 Kafka 收集各種服務(wù)的日志,如 web 服務(wù)器、服務(wù)器日志、數(shù)據(jù)庫(kù)服務(wù)器等,通過(guò) Kafka 以統(tǒng)一接口服務(wù)的方式開(kāi)放給各種消費(fèi)者,例如 Flink、Hadoop、Hbase、ElasticSearch 等。這樣可以實(shí)現(xiàn)分布式系統(tǒng)中海量日志數(shù)據(jù)的處理與分析。jvT28資訊網(wǎng)——每日最新資訊28at.com

下圖是一張典型的 ELK(Elastic-Logstash-Kibana)分布式日志采集架構(gòu)。jvT28資訊網(wǎng)——每日最新資訊28at.com

  • 購(gòu)物車(chē)服務(wù)將日志數(shù)據(jù)寫(xiě)在 log 文件中。
  • Logstash 讀取日志文件發(fā)送到 Kafka 的日志主題中。
  • ElasticSearch 訂閱日志主題,建立日志索引,保存日志數(shù)據(jù)。
  • 開(kāi)發(fā)者通過(guò) Kibana 連接到 ElasticSeach 即可查詢(xún)其日志索引內(nèi)容。

圖片jvT28資訊網(wǎng)——每日最新資訊28at.com

2. 推薦數(shù)據(jù)流

流式處理是 Kafka 在大數(shù)據(jù)領(lǐng)域的重要應(yīng)用場(chǎng)景之一。可以用 Kafka 作為流式處理平臺(tái)的數(shù)據(jù)源或數(shù)據(jù)輸出,與 Spark Streaming、Storm、Flink 等框架進(jìn)行集成,實(shí)現(xiàn)對(duì)實(shí)時(shí)數(shù)據(jù)的處理和分析,如過(guò)濾、轉(zhuǎn)換、聚合、窗口、連接等。jvT28資訊網(wǎng)——每日最新資訊28at.com

淘寶、京東這樣的線上商城網(wǎng)站會(huì)通過(guò)用戶(hù)過(guò)去的一些行為(點(diǎn)擊、瀏覽、購(gòu)買(mǎi)等)來(lái)和相似的用戶(hù)計(jì)算用戶(hù)相似度,以此來(lái)給用戶(hù)推薦可能感興趣的商品。jvT28資訊網(wǎng)——每日最新資訊28at.com

下圖展示了常見(jiàn)推薦系統(tǒng)的工作流程。jvT28資訊網(wǎng)——每日最新資訊28at.com

  1. 將用戶(hù)的點(diǎn)擊流數(shù)據(jù)發(fā)送到 Kafka 中。
  2. Flink 讀取 Kafka 中的流數(shù)據(jù)實(shí)時(shí)寫(xiě)入數(shù)據(jù)湖中其進(jìn)行聚合處理。
  3. 機(jī)器學(xué)習(xí)使用來(lái)自數(shù)據(jù)湖的聚合數(shù)據(jù)進(jìn)行訓(xùn)練,算法工程師也會(huì)對(duì)推薦模型進(jìn)行調(diào)整。

這樣推薦系統(tǒng)就能夠持續(xù)改進(jìn)對(duì)每個(gè)用戶(hù)的推薦相關(guān)性。jvT28資訊網(wǎng)——每日最新資訊28at.com

圖片jvT28資訊網(wǎng)——每日最新資訊28at.com

3. 系統(tǒng)監(jiān)控與報(bào)警

Kafka 常用于傳輸監(jiān)控指標(biāo)數(shù)據(jù)。例如,大一點(diǎn)的分布式系統(tǒng)中有數(shù)百臺(tái)服務(wù)器的 CPU 利用率、內(nèi)存使用情況、磁盤(pán)使用率、流量使用等指標(biāo)可以發(fā)布到 Kafka。然后,監(jiān)控應(yīng)用程序可以使用這些指標(biāo)來(lái)進(jìn)行實(shí)時(shí)可視化、警報(bào)和異常檢測(cè)。jvT28資訊網(wǎng)——每日最新資訊28at.com

下圖展示了常見(jiàn)監(jiān)控報(bào)警系統(tǒng)的工作流程。jvT28資訊網(wǎng)——每日最新資訊28at.com

  • 采集器(agent)讀取購(gòu)物車(chē)指標(biāo)發(fā)送到 Kafka 中。
  • Flink 讀取 Kafka 中的指標(biāo)數(shù)據(jù)進(jìn)行聚合處理。
  • 實(shí)時(shí)監(jiān)控系統(tǒng)和報(bào)警系統(tǒng)讀取聚合數(shù)據(jù)作展示以及報(bào)警處理。

圖片jvT28資訊網(wǎng)——每日最新資訊28at.com

4. CDC(數(shù)據(jù)變更捕獲)

CDC(數(shù)據(jù)變更捕獲)用來(lái)將數(shù)據(jù)庫(kù)中的發(fā)生的更改以流的形式傳輸?shù)狡渌到y(tǒng)以進(jìn)行復(fù)制或者緩存以及索引更新等。jvT28資訊網(wǎng)——每日最新資訊28at.com

Kafka 中有一個(gè)連接器組件可以支持 CDC 功能,它需要和具體的數(shù)據(jù)源結(jié)合起來(lái)使用。數(shù)據(jù)源可以分成兩種:源數(shù)據(jù)源( data source ,也叫作“源系統(tǒng)”)和目標(biāo)數(shù)據(jù)源( Data Sink ,也叫作“目標(biāo)系統(tǒng)”)。Kafka 連接器和源系統(tǒng)一起使用時(shí),它會(huì)將源系統(tǒng)的數(shù)據(jù)導(dǎo)人到 Kafka 集群。Kafka 連接器和目標(biāo)系統(tǒng)一起使用時(shí),它會(huì)將 Kafka 集群的數(shù)據(jù)導(dǎo)人到目標(biāo)系統(tǒng)。jvT28資訊網(wǎng)——每日最新資訊28at.com

下圖展示了常見(jiàn) CDC 系統(tǒng)的工作流程。jvT28資訊網(wǎng)——每日最新資訊28at.com

  • 源數(shù)據(jù)源將事務(wù)日志發(fā)送到 Kafka。
  • Kafka 的連接器將事務(wù)日志寫(xiě)入目標(biāo)數(shù)據(jù)源。
  • 目標(biāo)數(shù)據(jù)源包含 ElasticSearch、Redis、備份數(shù)據(jù)源等。

圖片jvT28資訊網(wǎng)——每日最新資訊28at.com

5. 系統(tǒng)遷移

Kafka 可以用來(lái)作為老系統(tǒng)升級(jí)到新系統(tǒng)過(guò)程中的消息傳遞中間件(Kafka),以此來(lái)降低遷移風(fēng)險(xiǎn)。jvT28資訊網(wǎng)——每日最新資訊28at.com

例如,在一個(gè)老系統(tǒng)中,有購(gòu)物車(chē) V1、訂單 V1、支付 V1 三個(gè)服務(wù),現(xiàn)在我們需要將訂單 V1 服務(wù)升級(jí)到訂單 V2 服務(wù)。jvT28資訊網(wǎng)——每日最新資訊28at.com

下圖展示了老系統(tǒng)遷移到新系統(tǒng)的工作流程。jvT28資訊網(wǎng)——每日最新資訊28at.com

  1. 先將老的訂單 V1 服務(wù)進(jìn)行改造接入 Kafka,并將輸出結(jié)果寫(xiě)入 ORDER 主題。
  2. 新的訂單 V2 服務(wù)接入 Kafka 并將輸出結(jié)果寫(xiě)入 ORDERNEW 主題。
  3. 對(duì)賬服務(wù)訂閱 ORDER 和 ORDERNEW 兩個(gè)主題并進(jìn)行比較。如果它們的輸出結(jié)構(gòu)相同,則新服務(wù)通過(guò)測(cè)試。

圖片jvT28資訊網(wǎng)——每日最新資訊28at.com

6. 事件溯源

事件溯源是 Kafka 在微服務(wù)架構(gòu)中的重要應(yīng)用場(chǎng)景之一。可以用 Kafka 記錄微服務(wù)間的事件,如訂單創(chuàng)建、支付完成、發(fā)貨通知等。這些事件可以被其他微服務(wù)訂閱和消費(fèi),實(shí)現(xiàn)業(yè)務(wù)邏輯的協(xié)調(diào)和同步。jvT28資訊網(wǎng)——每日最新資訊28at.com

簡(jiǎn)單來(lái)說(shuō)事件溯源就是將這些事件通過(guò)持久化存儲(chǔ)在 Kafka 內(nèi)部。如果發(fā)生任何故障、回滾或需要重放消息,我們都可以隨時(shí)重新應(yīng)用 Kafka 中的事件。jvT28資訊網(wǎng)——每日最新資訊28at.com

7. 消息隊(duì)列

Kafka 最常見(jiàn)的應(yīng)用場(chǎng)景就是作為消息隊(duì)列。Kafka 提供了一個(gè)可靠且可擴(kuò)展的消息隊(duì)列,可以處理大量數(shù)據(jù)。jvT28資訊網(wǎng)——每日最新資訊28at.com

Kafka 可以實(shí)現(xiàn)不同系統(tǒng)間的解耦和異步通信,如訂單系統(tǒng)、支付系統(tǒng)、庫(kù)存系統(tǒng)等。在這個(gè)基礎(chǔ)上 Kafka 還可以緩存消息,提高系統(tǒng)的可靠性和可用性,并且可以支持多種消費(fèi)模式,如點(diǎn)對(duì)點(diǎn)或發(fā)布訂閱。jvT28資訊網(wǎng)——每日最新資訊28at.com

參考資料

  • https://levelup.gitconnected.com/top-8-kafka-use-cases-distributed-systems-d47fc733c7c1
  • https://blog.bytebytego.com/p/ep76-netflixs-tech-stack
  • https://www.confluent.io/learn/apache-kafka-benefits-and-use-cases/

本文鏈接:http://www.tebozhan.com/showinfo-26-14822-0.htmlKafka 在分布式系統(tǒng)中的七大應(yīng)用場(chǎng)景

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 十個(gè)容易被忽視的FastAPI實(shí)用功能

下一篇: 從零開(kāi)始,運(yùn)用 Ruby 語(yǔ)言創(chuàng)建一個(gè) DNS 查詢(xún)

標(biāo)簽:
  • 熱門(mén)焦點(diǎn)
  • 紅魔電競(jìng)平板評(píng)測(cè):大屏幕硬實(shí)力

    前言:三年的疫情因?yàn)橐暇W(wǎng)課的原因激活了平板市場(chǎng),如今網(wǎng)課的時(shí)代已經(jīng)過(guò)去,大家的生活都恢復(fù)到了正軌,這也就意味著,真正考驗(yàn)平板電腦生存的環(huán)境來(lái)了。也就是面對(duì)著這種殘酷的
  • vivo TWS Air開(kāi)箱體驗(yàn):真輕 臻好聽(tīng)

    在vivo S15系列新機(jī)的發(fā)布會(huì)上,vivo的最新款真無(wú)線藍(lán)牙耳機(jī)vivo TWS Air也一同發(fā)布,本次就這款耳機(jī)新品給大家?guī)?lái)一個(gè)簡(jiǎn)單的分享。外包裝盒上,vivo TWS Air保持了vivo自家產(chǎn)
  • 帥氣純真少年!日本最帥初中生選美冠軍出爐

    日本第一帥哥初一生選美大賽冠軍現(xiàn)已正式出爐,冠軍是來(lái)自千葉縣的宗田悠良。日本一直熱衷于各種選美大賽,從“最美JK”起到“最美女星&r
  • 為什么你不應(yīng)該使用Div作為可點(diǎn)擊元素

    按鈕是為任何網(wǎng)絡(luò)應(yīng)用程序提供交互性的最常見(jiàn)方式。但我們經(jīng)常傾向于使用其他HTML元素,如 div span 等作為 clickable 元素。但通過(guò)這樣做,我們錯(cuò)過(guò)了許多內(nèi)置瀏覽器的功能。
  • 一條抖音4億人圍觀 ! 這家MCN比無(wú)憂傳媒還野

    作者:Hiu 來(lái)源:互聯(lián)網(wǎng)品牌官01 擦邊少女空降熱搜,幕后推手曝光被網(wǎng)友譽(yù)為“純欲天花板”的女網(wǎng)紅井川里予,近期因?yàn)橐唤M哥特風(fēng)照片登上熱搜,引發(fā)了一場(chǎng)互聯(lián)網(wǎng)世界關(guān)于
  • 阿里大調(diào)整

    來(lái)源:產(chǎn)品劉有媒體報(bào)道稱(chēng),近期淘寶天貓集團(tuán)啟動(dòng)了近年來(lái)最大的人力制度改革,涉及員工績(jī)效、層級(jí)體系等多個(gè)核心事項(xiàng),目前已形成一個(gè)初步的“征求意見(jiàn)版”:1、取消P序列
  • 小米MIX Fold 3配置細(xì)節(jié)曝光:搭載領(lǐng)先版驍龍8 Gen2+罕見(jiàn)5倍長(zhǎng)焦

    這段時(shí)間以來(lái),包括三星、一加、榮耀等等有不少品牌旗下的最新折疊屏旗艦都得到了不少爆料,而小米新一代折疊屏旗艦——小米MIX Fold 3此前也屢屢被傳
  • 三星折疊屏手機(jī)去年銷(xiāo)售近1000萬(wàn)臺(tái) 今年目標(biāo)定為1500萬(wàn)

    7月29日消息,三星率先發(fā)力可折疊手機(jī)市場(chǎng),在全球市場(chǎng)已經(jīng)取得了非常亮眼的成績(jī),接下來(lái)會(huì)進(jìn)一步鞏固和擴(kuò)大這一優(yōu)勢(shì)。三星在推出Galaxy Z Flip5和Galax
  • SN570 NVMe SSD固態(tài)硬盤(pán) 價(jià)格與性能兼具

    SN570 NVMe SSD固態(tài)硬盤(pán)是西部數(shù)據(jù)發(fā)布的最新一代WD Blue系列的固態(tài)硬盤(pán),不僅閃存技術(shù)更為精進(jìn),性能也得到了進(jìn)一步的躍升。WD Blue SN570 NVMe SSD的包裝外
Top