[發(fā)明專利]數(shù)據(jù)一致性實現(xiàn)方法、裝置及可讀存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 201910678446.2 | 申請日: | 2019-07-25 |
| 公開(公告)號: | CN110515959B | 公開(公告)日: | 2022-09-20 |
| 發(fā)明(設(shè)計)人: | 赫振軍;段光磊;王平;周正;張大虎;王楊;徐婷;柯登科 | 申請(專利權(quán))人: | 北京奇藝世紀(jì)科技有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23 |
| 代理公司: | 北京潤澤恒知識產(chǎn)權(quán)代理有限公司 11319 | 代理人: | 莎日娜 |
| 地址: | 100080 北京市海淀*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù)一致性 實現(xiàn) 方法 裝置 可讀 存儲 介質(zhì) | ||
本發(fā)明實施例提供了一種數(shù)據(jù)一致性實現(xiàn)方法、裝置及可讀存儲介質(zhì)。本發(fā)明數(shù)據(jù)一致性實現(xiàn)方法,包括:接收終端設(shè)備發(fā)送的數(shù)據(jù)查詢請求,響應(yīng)于所述數(shù)據(jù)查詢請求,對所述第一數(shù)據(jù)標(biāo)識執(zhí)行第一加鎖操作,并判斷緩存中是否存在與第一數(shù)據(jù)標(biāo)識關(guān)聯(lián)的第一數(shù)據(jù),若所述緩存中未存在與第一數(shù)據(jù)標(biāo)識關(guān)聯(lián)的所述第一數(shù)據(jù),則從數(shù)據(jù)庫中讀取所述第一數(shù)據(jù),并將讀取的第一數(shù)據(jù)更新到所述緩存中。從而保證了數(shù)據(jù)庫中的數(shù)據(jù)和緩存中的數(shù)據(jù)一致性。
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,特別是涉及一種數(shù)據(jù)一致性實現(xiàn)方法、裝置及可讀存儲介質(zhì)。
背景技術(shù)
互聯(lián)網(wǎng)環(huán)境中,對數(shù)據(jù)庫系統(tǒng)的訪問量大幅度提升,當(dāng)同一時間對數(shù)據(jù)庫系統(tǒng)的訪問請求較多時,數(shù)據(jù)庫的壓力將大大增加,為了減輕數(shù)據(jù)庫的壓力,緩存是現(xiàn)在數(shù)據(jù)庫系統(tǒng)中不可缺少的部分,通過緩存能夠大大降低數(shù)據(jù)庫的壓力。
目前最常用的緩存模式為Cache Aside,具體流程為:查詢數(shù)據(jù)時,應(yīng)用程序先從緩存取數(shù)據(jù),若沒有獲取數(shù)據(jù),則從數(shù)據(jù)庫中取數(shù)據(jù),從數(shù)據(jù)庫獲取數(shù)據(jù)后,把獲取的數(shù)據(jù)放到緩存中;若從緩存中獲取到數(shù)據(jù)(命中緩存)則直接返回。需要更新數(shù)據(jù)庫的數(shù)據(jù)時,是先把新數(shù)據(jù)存到數(shù)據(jù)庫中,成功后,再刪除緩存中的老數(shù)據(jù)。
然而,由于現(xiàn)有技術(shù)中需要同時維護(hù)兩個數(shù)據(jù)存儲,兩個數(shù)據(jù)存儲包括緩存和數(shù)據(jù)庫,先更新數(shù)據(jù)庫的數(shù)據(jù),再刪除緩存中的老數(shù)據(jù)的方式存在如下問題:如果查詢操作沒有命中緩存,之后從數(shù)據(jù)庫查詢到數(shù)據(jù)(例如數(shù)據(jù)A),此時有一個與查詢操作并發(fā)的更新操作,更新操作在查詢操作之后更新了數(shù)據(jù)庫中的數(shù)據(jù)(例如更新數(shù)據(jù)后將數(shù)據(jù)A更新為數(shù)據(jù)B),并且刪除了緩存中的數(shù)據(jù),在刪除緩存中的數(shù)據(jù)后查詢操作將從數(shù)據(jù)庫中讀出的數(shù)據(jù)(數(shù)據(jù)A)更新回了緩存。這樣就會導(dǎo)致數(shù)據(jù)庫中的數(shù)據(jù)(數(shù)據(jù)B)和緩存中的數(shù)據(jù)(數(shù)據(jù)A)不一致,之后的查詢操作從緩存中讀取的都是老數(shù)據(jù)(臟數(shù)據(jù))。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種數(shù)據(jù)一致性實現(xiàn)方法、裝置及可讀存儲介質(zhì),以解決現(xiàn)有技術(shù)的方案在并發(fā)業(yè)務(wù)場景中,導(dǎo)致的緩存中的數(shù)據(jù)和數(shù)據(jù)庫中的數(shù)據(jù)不一致的問題。
本發(fā)明實施例的第一方面,提供了一種數(shù)據(jù)一致性實現(xiàn)方法,執(zhí)行于服務(wù)端,包括:
接收終端設(shè)備發(fā)送的數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求包括第一數(shù)據(jù)標(biāo)識;
響應(yīng)于所述數(shù)據(jù)查詢請求,對所述第一數(shù)據(jù)標(biāo)識執(zhí)行第一加鎖操作,并判斷緩存中是否存在與所述第一數(shù)據(jù)標(biāo)識關(guān)聯(lián)的第一數(shù)據(jù);
若所述緩存中未存在與所述第一數(shù)據(jù)標(biāo)識關(guān)聯(lián)的所述第一數(shù)據(jù),則從數(shù)據(jù)庫中讀取所述第一數(shù)據(jù),并將讀取的所述第一數(shù)據(jù)更新到所述緩存中。
本發(fā)明實施例的第二方面,提供了一種數(shù)據(jù)一致性實現(xiàn)裝置,設(shè)置于服務(wù)端,包括:
第一接收模塊,用于接收終端設(shè)備發(fā)送的數(shù)據(jù)查詢請求,所述數(shù)據(jù)查詢請求包括第一數(shù)據(jù)標(biāo)識;
第一加鎖模塊,用于響應(yīng)于所述數(shù)據(jù)查詢請求,對所述第一數(shù)據(jù)標(biāo)識執(zhí)行第一加鎖操作,并判斷緩存中是否存在與所述第一數(shù)據(jù)標(biāo)識關(guān)聯(lián)的第一數(shù)據(jù);
讀取模塊,用于若所述緩存中未存在與所述第一數(shù)據(jù)標(biāo)識關(guān)聯(lián)的所述第一數(shù)據(jù),則從數(shù)據(jù)庫中讀取所述第一數(shù)據(jù),并將讀取的所述第一數(shù)據(jù)更新到所述緩存中。
本發(fā)明實施例的第三方面,提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)上存儲計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述所述的數(shù)據(jù)一致性實現(xiàn)方法的步驟。
本發(fā)明的第四方面,提供了一種數(shù)據(jù)一致性實現(xiàn)裝置,包括處理器、存儲器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述計算機程序被所述處理器執(zhí)行時實現(xiàn)上述所述的數(shù)據(jù)一致性實現(xiàn)方法的步驟。
針對在先技術(shù),本發(fā)明具備如下優(yōu)點:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇藝世紀(jì)科技有限公司,未經(jīng)北京奇藝世紀(jì)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910678446.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 云存儲數(shù)據(jù)的一致性維護(hù)方法及云存儲系統(tǒng)
- 一種實現(xiàn)數(shù)據(jù)一致性的方法及裝置
- 用于解決主設(shè)備間數(shù)據(jù)一致性的總線監(jiān)控方法及裝置
- 航天產(chǎn)品生產(chǎn)過程數(shù)據(jù)一致性保證方法
- 一種異構(gòu)系統(tǒng)數(shù)據(jù)一致性的方法
- 數(shù)據(jù)一致性校驗流控方法、裝置、電子設(shè)備及存儲介質(zhì)
- 一種金融數(shù)據(jù)一致性檢測系統(tǒng)及方法
- 一種在異地多活架構(gòu)下保障數(shù)據(jù)一致性的方法
- 一種預(yù)取buffer數(shù)據(jù)一致性的處理方法及裝置
- 基于區(qū)塊鏈技術(shù)的數(shù)據(jù)中臺的數(shù)據(jù)質(zhì)量監(jiān)控方法及系統(tǒng)
- 互動業(yè)務(wù)終端、實現(xiàn)系統(tǒng)及實現(xiàn)方法
- 街景地圖的實現(xiàn)方法和實現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實現(xiàn)裝置及其圖像實現(xiàn)方法
- 增強現(xiàn)實的實現(xiàn)方法以及實現(xiàn)裝置
- 軟件架構(gòu)的實現(xiàn)方法和實現(xiàn)平臺
- 數(shù)值預(yù)報的實現(xiàn)方法及實現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實現(xiàn)方法和實現(xiàn)裝置以及實現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實現(xiàn)方法和實現(xiàn)裝置以及實現(xiàn)系統(tǒng)
- 輸入設(shè)備實現(xiàn)方法及其實現(xiàn)裝置





