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

redis面試題目-如何保證數(shù)據(jù)庫(kù)與緩存的數(shù)據(jù)一致性

這篇具有很好參考價(jià)值的文章主要介紹了redis面試題目-如何保證數(shù)據(jù)庫(kù)與緩存的數(shù)據(jù)一致性。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

原視頻:https://www.bilibili.com/video/BV1Km4y1r75f?p=62&vd_source=fa75329ae3880aa55609265a0e9f5d34

由于緩存和數(shù)據(jù)庫(kù)是分開(kāi)的,無(wú)法做到原子性的同時(shí)進(jìn)行數(shù)據(jù)修改,可能出現(xiàn)緩存更新失敗,或者數(shù)據(jù)庫(kù)更新失敗的情況,這時(shí)候會(huì)出現(xiàn)數(shù)據(jù)不一致,影響前端業(yè)務(wù)

  • 先更新數(shù)據(jù)庫(kù),再更新緩存。緩存可能更新失敗,讀到老數(shù)據(jù)
  • 先刪緩存,再更新數(shù)據(jù)庫(kù)。并發(fā)時(shí),讀操作可能還是會(huì)將舊數(shù)據(jù)讀回緩存.先更新數(shù)據(jù)庫(kù),再刪緩存。也存在緩存刪除失敗的可能
    最經(jīng)典的緩存+數(shù)據(jù)庫(kù)讀寫(xiě)模式- Cache Aside Pattern :
    讀的時(shí)候,先讀緩存,緩存沒(méi)有的話,就讀數(shù)據(jù)庫(kù),然后取出數(shù)據(jù)后放入緩存,同時(shí)返回響應(yīng)。更新的時(shí)候,先更新數(shù)據(jù)庫(kù),然后再刪除緩存。

為什么是刪除緩存而不是更新緩存?
因?yàn)閯h除更加輕量,時(shí)延遲加載的一種實(shí)現(xiàn),更新可能涉及多個(gè)表、比較耗時(shí)

更優(yōu)的方案:延時(shí)雙刪:
先刪除緩存,再更新數(shù)據(jù)庫(kù),休眠1s、再次刪除緩存。寫(xiě)數(shù)據(jù)的休眠時(shí)間則在讀數(shù)據(jù)業(yè)務(wù)邏輯的耗時(shí)基礎(chǔ)上,加幾百 ms 即可。這么做的目的,就是確保讀請(qǐng)求結(jié)束,寫(xiě)請(qǐng)求可以刪除讀請(qǐng)求造成的緩存臟數(shù)據(jù),并發(fā)還是可能讀到舊值覆蓋緩存

終極方案:
將訪問(wèn)操作串行化
1.先刪除緩存,將更新操作放入一個(gè)有序隊(duì)列中
2.從緩存查不到的查詢(xún)操作,都進(jìn)入有序隊(duì)列
會(huì)面臨的問(wèn)題:
1、讀請(qǐng)求擠壓,大量超市,導(dǎo)致數(shù)據(jù)庫(kù)的壓力
2. 如何避免大量請(qǐng)求擠壓:將隊(duì)列水平拆分,提高并行度,不同的業(yè)務(wù)使用不同的隊(duì)列
3. 保證相同請(qǐng)求路由正確

redis實(shí)戰(zhàn)課:
https://www.bilibili.com/video/BV1cr4y1671t/?spm_id_from=333.999.0.0&vd_source=fa75329ae3880aa55609265a0e9f5d34
http://yun.itheima.com/course/806.html?capid=2文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-448531.html

到了這里,關(guān)于redis面試題目-如何保證數(shù)據(jù)庫(kù)與緩存的數(shù)據(jù)一致性的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • redis的緩存更新策略以及如何保證redis與數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性

    redis的緩存更新策略有這么幾種: 1、由應(yīng)用直接和redis以及數(shù)據(jù)庫(kù)相連接: ?? ??? ?查詢(xún)數(shù)據(jù)時(shí),應(yīng)用去redis中查詢(xún),查不到的話再由應(yīng)用去數(shù)據(jù)庫(kù)中查詢(xún),并將查詢(xún)結(jié)果放在redis; ?? ??? ?更新數(shù)據(jù)時(shí),由應(yīng)用去觸發(fā)redis數(shù)據(jù)的刪除以及數(shù)據(jù)庫(kù)的update。 2、應(yīng)用只跟redi

    2024年02月13日
    瀏覽(25)
  • 126、高頻Redis面試題:如何保證Redis和數(shù)據(jù)庫(kù)數(shù)據(jù)一致性

    126、高頻Redis面試題:如何保證Redis和數(shù)據(jù)庫(kù)數(shù)據(jù)一致性

    問(wèn)題:如果數(shù)據(jù)庫(kù)中的某條數(shù)據(jù)放入緩存后,又馬上被更新了,那我們應(yīng)該如何更新緩存 缺點(diǎn): 如果先更新緩存成功,在更新數(shù)據(jù)庫(kù)的時(shí)候失敗,這時(shí)候會(huì)導(dǎo)致數(shù)據(jù)不一致;緩存的作用是不是臨時(shí)將我們數(shù)據(jù)保存在內(nèi)存,便于提高查詢(xún)速度;但是如果某條數(shù)據(jù)在數(shù)據(jù)庫(kù)中都

    2024年02月13日
    瀏覽(27)
  • 如何保證緩存和數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性

    如何保證緩存和數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性

    若數(shù)據(jù)庫(kù)更新成功,刪除緩存操作失敗,則此后讀到的都是緩存中過(guò)期的數(shù)據(jù),造成不一致問(wèn)題。 同刪除緩存策略一樣,若數(shù)據(jù)庫(kù)更新成功緩存更新失敗則會(huì)造成數(shù)據(jù)不一致問(wèn)題。 若緩存更新成功數(shù)據(jù)庫(kù)更新失敗, 則此后讀到的都是未持久化的數(shù)據(jù)。因?yàn)榫彺嬷械臄?shù)據(jù)是易

    2023年04月19日
    瀏覽(39)
  • 如何保證數(shù)據(jù)庫(kù)、緩存的雙寫(xiě)一致?

    在我們?nèi)粘Q邪l(fā)過(guò)程中,由于數(shù)據(jù)庫(kù)的一些限制,我們經(jīng)常使用緩存(如:Redis)來(lái)提升訪問(wèn)速率。此時(shí),數(shù)據(jù)庫(kù)和緩存雙寫(xiě)數(shù)據(jù)就存在一致性問(wèn)題,這個(gè)問(wèn)題跟開(kāi)發(fā)語(yǔ)言無(wú)關(guān),在高并發(fā)場(chǎng)景下,問(wèn)題更加嚴(yán)重。 另外,在面試、工作中也會(huì)經(jīng)常遇到這個(gè)問(wèn)題。所以這里跟大家

    2024年04月12日
    瀏覽(28)
  • 如何保證數(shù)據(jù)庫(kù)和緩存雙寫(xiě)一致性?

    如何保證數(shù)據(jù)庫(kù)和緩存雙寫(xiě)一致性?

    如何保證數(shù)據(jù)庫(kù)和緩存雙寫(xiě)一致性,是面試中經(jīng)常被問(wèn)的一個(gè)技術(shù)問(wèn)題,程序汪推薦大家有必要好好研究一波 數(shù)據(jù)庫(kù)和緩存(比如:redis)雙寫(xiě)數(shù)據(jù)一致性問(wèn)題,是一個(gè)跟開(kāi)發(fā)語(yǔ)言無(wú)關(guān)的公共問(wèn)題。尤其在高并發(fā)的場(chǎng)景下,這個(gè)問(wèn)題變得更加嚴(yán)重。 我很負(fù)責(zé)的告訴大家,該問(wèn)

    2024年01月18日
    瀏覽(40)
  • 如何保證緩存與數(shù)據(jù)庫(kù)雙寫(xiě)時(shí)的數(shù)據(jù)一致性?

    如何保證緩存與數(shù)據(jù)庫(kù)雙寫(xiě)時(shí)的數(shù)據(jù)一致性?

    背景:使用到緩存,無(wú)論是本地內(nèi)存做緩存還是使用?Redis?做緩存,那么就會(huì)存在數(shù)據(jù)同步的問(wèn)題,因?yàn)榕渲眯畔⒕彺嬖趦?nèi)存中,而內(nèi)存時(shí)無(wú)法感知到數(shù)據(jù)在數(shù)據(jù)庫(kù)的修改。這樣就會(huì)造成數(shù)據(jù)庫(kù)中的數(shù)據(jù)與緩存中數(shù)據(jù)不一致的問(wèn)題。 共有四種方案: 先更新數(shù)據(jù)庫(kù),后更新緩

    2024年01月24日
    瀏覽(24)
  • 【4種方案】如何保證Redis與數(shù)據(jù)庫(kù)的數(shù)據(jù)一致!

    先刪除“緩存”再去更新“數(shù)據(jù)庫(kù)”。 但是該方案還存在問(wèn)題: ????????在高并發(fā)情況下, 第一個(gè)線程刪除緩存 ,還沒(méi)來(lái)得及去操作數(shù)據(jù)庫(kù),這時(shí) 第二個(gè)線程訪問(wèn)緩存 ,發(fā)現(xiàn)為 null ,于是去數(shù)據(jù)庫(kù)查詢(xún),獲取到需要的值,這時(shí)候 第一個(gè)線程 才開(kāi)始操作數(shù)據(jù)庫(kù),然后設(shè)

    2024年02月14日
    瀏覽(27)
  • mysql和redis如何保證數(shù)據(jù)庫(kù)一致性

    如果對(duì)于小公司的單機(jī)服務(wù)器來(lái)說(shuō)在更新和刪除mysql數(shù)據(jù)的同時(shí)對(duì)redis緩存進(jìn)行更新或者刪除就行,一般有兩個(gè)選擇,例如: 先更新MySQL,后刪除(或更新)Redis 先刪除(或更新)Redis,后更新MySQL 但是不管使用其中哪種方式,都存在兩個(gè)可能的問(wèn)題: 由于第一步與第二步并不是原

    2023年04月24日
    瀏覽(25)
  • Redis如何保障緩存與數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性問(wèn)題?

    Redis如何保障緩存與數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性問(wèn)題?

    目錄 一.最經(jīng)典的數(shù)據(jù)庫(kù)加緩存的雙寫(xiě)雙刪模式 二. 高并發(fā)場(chǎng)景下的緩存+數(shù)據(jù)庫(kù)雙寫(xiě)不一致問(wèn)題分析與解決方案設(shè)計(jì) 三、上面高并發(fā)的場(chǎng)景下,該解決方案要注意的問(wèn)題 1.1 Cache Aside Pattern概念以及讀寫(xiě)邏輯 (1)讀的時(shí)候,先讀緩存,緩存沒(méi)有的話,那么就讀數(shù)據(jù)庫(kù),然后取

    2023年04月21日
    瀏覽(29)
  • Redis 緩存與數(shù)據(jù)庫(kù)雙寫(xiě)不一致如何解決

    Redis緩存與數(shù)據(jù)庫(kù)雙寫(xiě)不一致是一個(gè)常見(jiàn)的挑戰(zhàn),但可以通過(guò)一些方法來(lái)解決或減輕這種不一致性。以下是一些可能的解決方案: 事務(wù)處理: 在進(jìn)行緩存和數(shù)據(jù)庫(kù)雙寫(xiě)時(shí),確保它們被包含在同一事務(wù)中。這可以通過(guò)使用支持事務(wù)的數(shù)據(jù)庫(kù)和Redis事務(wù)來(lái)實(shí)現(xiàn)。這樣,要么兩者同

    2024年01月21日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包