黄视频网站在线免费观看-黄视频网站在线看-黄视频网站在线观看-黄视频网站免费看-黄视频网站免费观看-黄视频网站免费

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  應(yīng)聘面試  >  Java面試題  > 如何保證Redis緩存與數(shù)據(jù)庫的同步?你確定不來看看這道高頻面試題

如何保證Redis緩存與數(shù)據(jù)庫的同步?你確定不來看看這道高頻面試題

來源:千鋒教育
發(fā)布人:syq
時(shí)間: 2022-10-11 17:24:06 1665480246

  今天小千要給大家分享一道關(guān)于數(shù)據(jù)庫緩存同步的面試題,希望通過這道面試題可以幫助大家搞定面試官。

如何保證Redis緩存與數(shù)據(jù)庫的同步

  一. 數(shù)據(jù)緩存

  數(shù)據(jù)緩存在高并發(fā)的系統(tǒng)設(shè)計(jì)中很常見,因?yàn)镽edis確實(shí)能有效地解決數(shù)據(jù)庫和磁盤的I/O瓶頸,當(dāng)一個(gè)高并發(fā)接口要查詢低頻修改的數(shù)據(jù)時(shí),我們都建議用Redis實(shí)現(xiàn)數(shù)據(jù)緩存。

  一般的緩存實(shí)現(xiàn)思路如下:

50 (1)

  其實(shí)緩存的實(shí)現(xiàn)思路很簡單,這個(gè)思路能保證只有第一次查詢的是數(shù)據(jù)庫,后續(xù)的訪問查詢的都是Redis,這樣不僅提高了接口的訪問效率,還在一定程度上實(shí)現(xiàn)了數(shù)據(jù)庫的讀寫分離。

  那么現(xiàn)在問題來了,如果我們的數(shù)據(jù)庫數(shù)據(jù)發(fā)生了變化,Redis怎么保證和數(shù)據(jù)庫里的數(shù)據(jù)一致呢?這個(gè)問題就是我們今天要探討的緩存同步問題。

  二. 緩存同步分析

  緩存同步這個(gè)思路相信大家很快就能搞清楚,大概思路如下:

51 (1)

  當(dāng)我們對業(yè)務(wù)庫做了修改,我們可以通過同步更新的方式去同步,也可以通過暴力刪除Redis的方式去同步。因?yàn)閯h除Redis,會(huì)再次查詢數(shù)據(jù)庫的最新數(shù)據(jù),這樣就可以達(dá)成同步的目的。但不管你使用哪種方式,都會(huì)存在一些意想不到的問題,如下:

52 (1)

  先寫數(shù)據(jù)庫,再更新Redis,上圖中演示了一種極端情況,按照時(shí)間軸的發(fā)展,數(shù)據(jù)庫里的最新值是8,但Redis中的最新值是9,并沒有一致。

53 (1)

  如果我們先更新Redis,再寫數(shù)據(jù)庫,按照時(shí)間軸,Redis里的最新值是8 ,數(shù)據(jù)庫里的最新值是9,還是沒有保持一致。

54 (1)

  先寫數(shù)據(jù)庫,再刪Redis,這也不行。

  如上圖,當(dāng)數(shù)據(jù)庫里的值為9,然后再刪Redis。假如這時(shí)有一個(gè)讀線程來了,發(fā)現(xiàn)Redis數(shù)據(jù)沒了,這個(gè)讀線程立即查詢數(shù)據(jù)庫,讀到的就是9。然而不巧的是另外一個(gè)寫線程將數(shù)據(jù)庫改為8 ,也就是說數(shù)據(jù)庫最新為8,結(jié)果緩存發(fā)生在更新數(shù)據(jù)庫之后,緩存最新的值就是9,還是不能一致。

55 (1)

  如果我們先刪Redis再寫數(shù)據(jù)庫,寫線程上來把Redis刪了,讀線程立即讀數(shù)據(jù)庫,比如讀到的舊數(shù)據(jù)是8,然后寫線程再改數(shù)據(jù)庫為9,這時(shí)數(shù)據(jù)庫最新為9,但Redis中的值是8,結(jié)果還是不一致。

  三. 緩存同步解決思路

  上面分析了四種情況,它們在極端情況下都不能保證數(shù)據(jù)庫和Redis的雙寫一致性,那到底為什么不能呢?問題到底出在哪里了,其實(shí)原因很簡單,就是我們不能保證數(shù)據(jù)庫和redis操作的原子性!在我們進(jìn)行這兩個(gè)操作時(shí),總是有別的線程在破壞數(shù)據(jù),所以才會(huì)出現(xiàn)各種問題,那怎么解決呢?我們先來看看下面的解決思路:

56 (1)

  這個(gè)思路大致是這樣的,寫線程只負(fù)責(zé)改數(shù)據(jù)庫,不要去參與Redis同步的問題,Redis同步交給一個(gè)嚴(yán)格順序的pipeline解決。這個(gè)pipeline的流程是,當(dāng)數(shù)據(jù)庫發(fā)生數(shù)據(jù)變化會(huì)立即產(chǎn)生binlog日志,我們可以借助阿里的canal組件去監(jiān)聽binlog,同時(shí)解析binlog,將解析的結(jié)果以消息的方式發(fā)送給MQ。MQ要保證嚴(yán)格順序,再通過消費(fèi)者去消費(fèi)消息,將最新的數(shù)據(jù)覆蓋更新到Redis,到此就能解決緩存的同步。

  現(xiàn)在你對數(shù)據(jù)庫和Redis緩存的同步問題還有疑惑嗎?如果還有別的問題,請關(guān)注我們吧,干貨不斷哦。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
面向?qū)ο缶幊痰奶卣魇鞘裁?請解釋每個(gè)特征

答案:面向?qū)ο缶幊痰奶卣靼ǎ悍庋b(Encapsulation):封裝是將相關(guān)的數(shù)據(jù)和方法組合在一起形成類的機(jī)制。它可以隱藏內(nèi)部實(shí)現(xiàn)細(xì)節(jié),只暴露必要的...詳情>>

2023-07-18 13:56:00
容器是什么?如何理解容器

  容器(Container)是一個(gè)廣泛的概念,指的是一種可以容納其他元素或?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)或抽象概念。在計(jì)算機(jī)科學(xué)中,容器的概念經(jīng)常出現(xiàn)在數(shù)據(jù)結(jié)...詳情>>

2023-05-08 13:41:00
91麻豆精品国产自产在线| 欧美另类videosbestsex高清| 国产一区精品| 九九热精品免费观看| a级黄色毛片免费播放视频| 国产亚洲精品aaa大片| 亚洲精品影院一区二区| 欧美一区二区三区在线观看| 精品久久久久久影院免费| 国产一区二区精品| 国产一级强片在线观看| 青草国产在线| 日韩欧美一二三区| 国产成人精品影视| 午夜精品国产自在现线拍| 日日日夜夜操| 999精品在线| 日韩男人天堂| 国产综合成人观看在线| 午夜在线影院| 亚洲第一色在线| 国产欧美精品| 99久久精品费精品国产一区二区| 免费的黄色小视频| 精品在线观看一区| 青青久热| 一级毛片视频播放| 日韩av东京社区男人的天堂| 国产一区免费观看| 国产综合成人观看在线| 美国一区二区三区| 成人免费高清视频| 欧美一区二区三区性| 国产激情视频在线观看| 四虎影视库| 国产网站免费视频| 国产精品1024永久免费视频| 麻豆网站在线看| 99热热久久| 国产伦精品一区三区视频| 国产高清视频免费| 成人a级高清视频在线观看| 天天做日日爱夜夜爽| 国产伦精品一区二区三区无广告| 999久久狠狠免费精品| 午夜家庭影院| 可以免费在线看黄的网站| 一本高清在线| 日韩中文字幕在线亚洲一区| 国产一区二区高清视频| 九九久久99| 久久成人亚洲| 99久久精品国产高清一区二区| 精品视频在线看 | 国产视频一区在线| 黄视频网站在线免费观看| 一级女性全黄生活片免费| 国产精品1024在线永久免费| 深夜做爰性大片中文| 亚欧成人毛片一区二区三区四区 | 香蕉视频一级| 九九免费高清在线观看视频| 国产成a人片在线观看视频| 日本特黄特黄aaaaa大片| 日本伦理黄色大片在线观看网站| 精品国产一区二区三区国产馆| 欧美国产日韩精品| 国产极品精频在线观看| 精品国产香蕉伊思人在线又爽又黄| 国产精品1024在线永久免费| 青青青草视频在线观看| 四虎影视久久久| 国产网站在线| 99热精品在线| 一级女人毛片人一女人| 国产伦精品一区三区视频| 日韩一级黄色大片| 可以免费看污视频的网站| 国产精品1024在线永久免费| 亚洲天堂在线播放| 天堂网中文字幕| 欧美激情在线精品video| 欧美激情一区二区三区在线 | 日韩免费在线观看视频| 日韩一级黄色片| 精品国产香蕉在线播出| 日韩中文字幕一区| 国产网站在线| 欧美a级片免费看| 免费一级生活片| 天天做日日爱| 91麻豆精品国产综合久久久| 美女被草网站| 二级特黄绝大片免费视频大片| 91麻豆国产| 日韩av东京社区男人的天堂| 国产网站免费| 欧美激情一区二区三区在线播放 | 一级毛片看真人在线视频| 精品视频一区二区三区| 国产91精品一区| 免费的黄色小视频| 国产一区二区精品久久91| 免费一级片在线| 国产综合成人观看在线| 日韩免费在线观看视频| 青青青草影院 | 久久精品大片| 国产视频一区二区在线观看 | 香蕉视频久久| 久久99中文字幕| 国产视频久久久久| 欧美激情一区二区三区视频| 国产91精品一区| 国产一区免费在线观看| 天天做日日干| 夜夜操天天爽| 国产成人精品影视| 高清一级片| 国产一级生活片| 免费毛片播放| 日韩av片免费播放| 黄视频网站免费| 欧美日本免费| 黄视频网站在线观看| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产成人精品综合| 999久久狠狠免费精品| 日韩欧美一二三区| 91麻豆精品国产自产在线观看一区| 欧美a级大片| 九九九网站| 国产网站在线| a级精品九九九大片免费看| 黄视频网站免费看| 日日日夜夜操| 天天做日日爱| 成人免费一级毛片在线播放视频| 欧美α片无限看在线观看免费| 欧美另类videosbestsex久久| 精品视频免费看| 超级乱淫黄漫画免费| 天天做人人爱夜夜爽2020毛片| 精品毛片视频| 国产视频在线免费观看| 日韩一级黄色大片| 久久国产一区二区| 久久国产一久久高清| 韩国三级视频在线观看| 亚洲 男人 天堂| 成人免费网站久久久| 国产91丝袜在线播放0| 精品久久久久久免费影院| 日本特黄特色aa大片免费| 高清一级片| 成人免费观看视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产一区国产二区国产三区| 国产一区二区精品在线观看| 精品久久久久久免费影院| 999久久久免费精品国产牛牛| 国产a毛片| 欧美大片毛片aaa免费看| 天天做日日爱| 成人免费网站久久久| 精品国产一级毛片| 国产一级强片在线观看| 夜夜操网| 九九免费高清在线观看视频| 国产极品白嫩美女在线观看看| 青青久在线视频| 999久久狠狠免费精品| 精品国产一区二区三区久久久狼| 国产成人精品影视| 麻豆污视频| 精品视频在线看| 久久久成人影院| 在线观看成人网 | 国产美女在线观看| 国产不卡高清| 久草免费在线视频| 韩国毛片| 亚洲 男人 天堂| 久久成人亚洲| 韩国三级香港三级日本三级la| 日韩中文字幕一区| 日本免费看视频| 99久久精品国产麻豆| 日韩在线观看免费| 日本在线不卡免费视频一区| 一级毛片视频播放| 国产不卡高清| 午夜激情视频在线观看 | 高清一级片| 欧美激情伊人| 精品毛片视频| 国产一区免费在线观看| 亚洲 激情| 亚欧乱色一区二区三区| 欧美激情一区二区三区视频高清 |