国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Kafka數(shù)據(jù)丟失原因及解決方案

這篇具有很好參考價(jià)值的文章主要介紹了Kafka數(shù)據(jù)丟失原因及解決方案。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Kafka包括Producer、Broker、Consumer,因此從這三個(gè)方面分析。

Producer端

丟失原因:Kafka在Producer端的消息發(fā)送采用的是異步發(fā)送的方式(還有同步發(fā)送,但是同步發(fā)送會導(dǎo)致消息阻塞、需要等待),丟失數(shù)據(jù)是因?yàn)橄]有到達(dá)Broker端,原因可能是網(wǎng)絡(luò)波動(dòng)導(dǎo)致沒有回調(diào)和數(shù)據(jù)消息太大超出Broker承受范圍,導(dǎo)致Broker拒收消息。

解決方法:更換調(diào)用方式,不使用異步發(fā)送,使用帶回調(diào)通知函數(shù)的方法進(jìn)行發(fā)送消息,網(wǎng)絡(luò)波動(dòng)和消息過大,可以調(diào)整Producer端重試次數(shù)和消息大小。

丟失原因:Kafka默認(rèn)ack設(shè)置為1,會存在數(shù)據(jù)丟失問題。(ack為0也會存在丟數(shù)據(jù)問題)

解決方法:修改ack設(shè)置為-1。(可以結(jié)合冪等性做到Exactly Once)

Broker端

丟失原因:數(shù)據(jù)從Producer端push過來后,Broker端需要將數(shù)據(jù)持久化存儲到磁盤中,消息存儲是異步存儲的,即按照一定的消息數(shù)量和間隔時(shí)間進(jìn)行存儲,數(shù)據(jù)會先放在 PageCache 中,如果在存儲的時(shí)候Broker宕機(jī),此時(shí)選舉了一個(gè)落后Leader Partition 很多的 Follower Partition 成為新的Lerder Partition,那么落后的消息就會丟失。

解決方法:修改參數(shù),設(shè)置有資格成為Leader的Follower(落后太久的不要),設(shè)置分區(qū)數(shù)≥3(Leader宕機(jī)后可以有Follower補(bǔ)上),設(shè)置消息至少要被寫入成功到ISR多少個(gè)副本才算“已提交”。

Consumer端

丟失原因:Consumer拉取消息后最終處理完需要提交 Offset,提交Offset有以下三種方式:

  1. 自動(dòng)提交Offset。
  2. 拉取消息后,先提交offset、再處理消息,如果此時(shí)處理消息的時(shí)候宕機(jī),由于Offset已提交,Consumer重啟后會從之前已提交的offset 下一個(gè)位置開始消費(fèi),之前未處理的消息不會被再次處理,對于Consumer來說消息已經(jīng)丟失。
  3. 拉取消息后,先處理消息、再提交Offset,如果此時(shí)在提交之前宕機(jī),由于Offset沒有提交,Consumer重啟后會從上次的Offset重新拉取消息,不會丟失數(shù)據(jù),但會出現(xiàn)重復(fù)消費(fèi)的情況,這里只能業(yè)務(wù)自己保證冪等性。

方式2會導(dǎo)致數(shù)據(jù)丟失。

解決方法:使用先拉取消息、再處理消息、再提交offset的方法,并且設(shè)置參數(shù) enable.auto.commit = false 使用手動(dòng)提交位移的方式。文章來源地址http://www.zghlxwxcb.cn/news/detail-629424.html

到了這里,關(guān)于Kafka數(shù)據(jù)丟失原因及解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 94、Kafka消息丟失的場景及解決方案

    1、ack=0,不重試 producer發(fā)送消息完,不管結(jié)果了,如果發(fā)送失敗也就丟失了。 2、ack=1,leader crash producer發(fā)送消息完,只等待 leader 寫入成功就返回了,leader crash了,這時(shí)follower沒來及同步,消息丟失, 3、unclean .leader .election .enable 配置true 允許選舉ISR以外的副本作為leader,會導(dǎo)

    2024年02月16日
    瀏覽(24)
  • 一文讀懂kafka消息丟失問題和解決方案

    一文讀懂kafka消息丟失問題和解決方案

    今天分享一下kafka的消息丟失問題,kafka的消息丟失是一個(gè)很值得關(guān)注的問題,根據(jù)消息的重要性,消息丟失的嚴(yán)重性也會進(jìn)行放大,如何從最大程度上保證消息不丟失,要從生產(chǎn)者,消費(fèi)者,broker幾個(gè)端來說。 kafka生產(chǎn)者生產(chǎn)好消息后,會將消息發(fā)送到broker節(jié)點(diǎn),broker對數(shù)據(jù)

    2024年02月08日
    瀏覽(17)
  • kafka亂序消費(fèi)可能的原因和解決方案

    Kafka亂序消費(fèi)可能的原因有以下幾個(gè): 分區(qū)順序:Kafka中的消息按照分區(qū)進(jìn)行存儲和分發(fā),每個(gè)分區(qū)內(nèi)的消息是有序的,但不同分區(qū)之間的消息順序是無法保證的。如果消費(fèi)者在多個(gè)分區(qū)上進(jìn)行并行消費(fèi),并且不處理消息的順序,那么消費(fèi)順序可能會混亂。 消費(fèi)者并發(fā)度:當(dāng)

    2024年01月25日
    瀏覽(62)
  • Kafka rebalance 的幾種原因與解決方案

    網(wǎng)上有很多文章講述 Kafka rebalance 的原理,本文是列舉常見的幾種 rebalance 場景。 rebalance 期間,當(dāng)前 consumer group 的所有 consumer 都要暫停消費(fèi),開銷較大。因此應(yīng)該盡量減少 rebalance ,而 relalance 的原因通常是 consumer 數(shù)量變化,常見的幾種情況如下: 如果一個(gè) consumer 剛啟動(dòng),

    2024年02月01日
    瀏覽(19)
  • Kafka消息發(fā)送失敗的常見原因及解決方案

    1.1、網(wǎng)絡(luò)故障 網(wǎng)絡(luò)故障是Kafka消息發(fā)送失敗的最常見原因之一。當(dāng)網(wǎng)絡(luò)出現(xiàn)故障時(shí),Kafka就無法將消息發(fā)送到目標(biāo)主題或分區(qū)。 解決方法: - 檢查網(wǎng)絡(luò)連接是否正常。 - 增加Kafka生產(chǎn)者的重試次數(shù)和超時(shí)時(shí)間。 1.2、分區(qū)副本不可用 如果Kafka生產(chǎn)者將消息發(fā)送到一個(gè)不可用的分

    2024年02月03日
    瀏覽(25)
  • Kafka數(shù)據(jù)重復(fù)問題解決方案

    通常,消息消費(fèi)時(shí)候都會設(shè)置一定重試次數(shù)來避免網(wǎng)絡(luò)波動(dòng)造成的影響,同時(shí)帶來副作用是可能出現(xiàn)消息重復(fù)。 冪等性指: 冪等性使用示例: 為了更好理解,需要了解下Kafka冪等機(jī)制 這種設(shè)計(jì)針對解決了兩個(gè)問題: 那什么時(shí)候該使用冪等: 事務(wù)使用示例:分為生產(chǎn)端 和

    2024年02月07日
    瀏覽(20)
  • RabbitMq消息丟失原因及其解決方案

    RabbitMq消息丟失原因及其解決方案

    我們首先了解下一條消息從生產(chǎn)到消費(fèi)的整個(gè)流程如下: 生產(chǎn)--MQ Broker -- 消費(fèi)。所以這三個(gè)環(huán)節(jié)都有丟失消息的可能。 1.1、生產(chǎn)者丟失消息 生產(chǎn)者將數(shù)據(jù)發(fā)送到rabbitmq的時(shí)候,可能因?yàn)榫W(wǎng)絡(luò)問題導(dǎo)致數(shù)據(jù)就在半路給搞丟了。 1.使用事務(wù)(性能差) ? RabbitMQ 客戶端中與事務(wù)機(jī)

    2024年02月08日
    瀏覽(23)
  • MQ消息丟失的可能原因與解決方案

    當(dāng)我們使用消息隊(duì)列(MQ)作為分布式系統(tǒng)中的核心組件時(shí),消息丟失是一個(gè)常見的問題。消息丟失可能導(dǎo)致數(shù)據(jù)不一致或功能故障,因此對于許多應(yīng)用程序來說是不可接受的。本文將介紹幾種常見的MQ消息丟失的原因,并提供相應(yīng)的解決方案。 生產(chǎn)者在發(fā)送消息時(shí)可能會遇

    2024年02月15日
    瀏覽(29)
  • Kafka數(shù)據(jù)傾斜到某一個(gè)分區(qū)解決方案

    我們使用Kafka時(shí),某時(shí)需要消息消費(fèi)是有序的,因此在生產(chǎn)者投遞消息時(shí),可能會指定分區(qū),或者指定Key,此時(shí)可能會導(dǎo)致數(shù)據(jù)傾斜到某一個(gè)分區(qū)。 由于Kafka消費(fèi)的特性,即一個(gè)消費(fèi)組,那怕此時(shí)消費(fèi)組有2個(gè)以上消費(fèi)者,此時(shí)同一個(gè)主分區(qū),只能被一個(gè)消費(fèi)者消費(fèi),當(dāng)生產(chǎn)消

    2024年02月13日
    瀏覽(38)
  • 帶你了解RabbitMQ:消息丟失、重復(fù)、積壓的原因及其解決方案

    前言 首先說一點(diǎn),企業(yè)中最常用的實(shí)際上既不是RocketMQ,也不是Kafka,而是RabbitMQ。 RocketMQ很強(qiáng)大,但主要是阿里推廣自己的云產(chǎn)品而開源出來的一款消息隊(duì)列,其實(shí)中小企業(yè)用RocketMQ的沒有想象中那么多。 深層次的原因在于兔寶在中小企業(yè)普及更早,經(jīng)受的考驗(yàn)也更久,很容

    2024年02月04日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包