最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

redis數(shù)據(jù)一致性的實現(xiàn)示例

 更新時間:2022年03月18日 10:29:36   作者:潤青  
所謂的redis數(shù)據(jù)一致性即當(dāng)進(jìn)行修改或者保存、刪除之后,redis中的數(shù)據(jù)也應(yīng)該進(jìn)行相應(yīng)變化,本文主要介紹了redis數(shù)據(jù)一致性,具有一定的參考價值,感興趣的小伙伴們可以參考一下

前言

所謂的redis數(shù)據(jù)一致性即當(dāng)進(jìn)行修改或者保存、刪除之后,redis中的數(shù)據(jù)也應(yīng)該進(jìn)行相應(yīng)變化,不然用戶再次查詢的時候很可能查詢出已經(jīng)刪除過的臟數(shù)據(jù)。

一、緩存一致的必要性

還是接上篇來說,我們已經(jīng)解決了redis緩存穿透的問題(簡單解決方案,可以再次優(yōu)化),但是使用redis的時候緩存一致性的問題我們也需要著重考慮,例如:保存了一個新用戶之后,就應(yīng)該同時在redis緩存中也插入該條數(shù)據(jù),更新了某條數(shù)據(jù)在緩存中也應(yīng)該同步更新,而redis默認(rèn)的做法是:當(dāng)你不去設(shè)置的時候redis中存放的一值是你之前存放的數(shù)據(jù),只有在重啟服務(wù)器的時候數(shù)據(jù)才會同步,顯然這是非常不可取的,如果是這樣的話豈不是每時每刻都要重啟服務(wù)器,那將是多么大的災(zāi)難!

二、業(yè)務(wù)場景

這里我只說一個場景吧,其他場景都是一樣的處理辦法,場景為:假設(shè)我們將用戶數(shù)據(jù)放入到redis中,此時有新用戶注冊,在數(shù)據(jù)庫中會插入一條新數(shù)據(jù),與此同時要在redis中也插入該條數(shù)據(jù),以便于下次查詢的時候顯示最新數(shù)據(jù)。

我們先來看一下默認(rèn)不使用任何處理的情況下redis是否會為我們做一致性操作,現(xiàn)在我的測試數(shù)據(jù)庫中有18條用戶數(shù)據(jù),此時我們啟動系統(tǒng)后注冊插入第19條數(shù)據(jù)后看下redis中是否有19條。

經(jīng)過注冊之后我現(xiàn)在給數(shù)據(jù)庫中插入了第19條數(shù)據(jù)

接著我們還是使用上篇提到過的查詢緩存的方法來獲取下所有信息,我們直接來看第最后一條,可以看到最后是潤青而不是十九,所以redis默認(rèn)是沒有替我們做緩存一致操作的。

三、緩存一致性實現(xiàn)(方案1)

其實,要想實現(xiàn)一致性很簡單,當(dāng)我們在進(jìn)行插入操作之后,我們把該條數(shù)據(jù)取出來同時保存到redis緩存中去,這樣再次查詢緩存的時候我們也可以看到新的數(shù)據(jù),代碼如下:

需要注意的是:我這里直接是調(diào)用JPA的findAll(),其實更好的做法是根據(jù)id去更新剛插入的那一條,這樣效率才高,這里只是演示如何實現(xiàn),接著再來注冊一條新數(shù)據(jù),看看是否可以在緩存中同時看到:新插入的數(shù)據(jù)id為29,我們來看下緩存是否存在該條新數(shù)據(jù)

四、redis緩存一致性實現(xiàn)(方案2)

定期清除redis中的數(shù)據(jù),例如設(shè)置一個定時任務(wù),每當(dāng)一個小時的時候就會清除redis中的數(shù)據(jù),也就是讓redis中的數(shù)據(jù)失效,然后再次保存、刪除的時候之前的 redis中的數(shù)據(jù)已經(jīng)不存在,所以相當(dāng)于是將數(shù)據(jù)重新設(shè)置到redis中去,所以可以保證數(shù)據(jù)的一致性。

到此這篇關(guān)于redis數(shù)據(jù)一致性的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)redis數(shù)據(jù)一致性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Redis Cluster集群動態(tài)擴容的實現(xiàn)

    Redis Cluster集群動態(tài)擴容的實現(xiàn)

    本文主要介紹了Redis Cluster集群動態(tài)擴容的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • 最新評論

    昌平区| 华亭县| 个旧市| 锡林郭勒盟| 黔东| 甘德县| 铜陵市| 金平| 镇赉县| 白银市| 沾化县| 陇南市| 金平| 巨野县| 连州市| 花莲县| 紫阳县| 吉安市| 增城市| 平顶山市| 渭南市| 慈溪市| 石城县| 崇义县| 广灵县| 花莲市| 团风县| 禹城市| 凉城县| 泾川县| 永修县| 秦安县| 林甸县| 吴堡县| 临邑县| 通辽市| 富蕴县| 油尖旺区| 天镇县| 临泽县| 山东省|