[發(fā)明專利]緩存失效方法和裝置有效
| 申請?zhí)枺?/td> | 201310754652.X | 申請日: | 2013-12-31 |
| 公開(公告)號: | CN103678173B | 公開(公告)日: | 2017-07-04 |
| 發(fā)明(設(shè)計)人: | 顏亮 | 申請(專利權(quán))人: | 金蝶軟件(中國)有限公司 |
| 主分類號: | G06F12/0817 | 分類號: | G06F12/0817;G06F17/30 |
| 代理公司: | 廣州華進(jìn)聯(lián)合專利商標(biāo)代理有限公司44224 | 代理人: | 何平 |
| 地址: | 518000 廣東省深圳市南山區(qū)*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 緩存 失效 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,特別是涉及一種緩存失效方法和裝置。
背景技術(shù)
企業(yè)管理系統(tǒng)是面向企業(yè)的,能夠幫助企業(yè)優(yōu)化工作流程,提高工作效率的信息化系統(tǒng)。企業(yè)管理系統(tǒng),如ERP(Enterprise Resource Planning,企業(yè)資源計劃)系統(tǒng)在運(yùn)行中需要與數(shù)據(jù)庫進(jìn)行交互,從數(shù)據(jù)庫中讀取數(shù)據(jù)進(jìn)行處理。
企業(yè)管理系統(tǒng)如果重復(fù)地從數(shù)據(jù)庫中取出相同的數(shù)據(jù),就會極大地增加數(shù)據(jù)庫的負(fù)載,造成性能問題。緩存是解決企業(yè)管理系統(tǒng)與數(shù)據(jù)庫交互性能瓶頸的有效途徑,例如在ERP系統(tǒng)中可以應(yīng)用分布式緩存來提高查詢性能,減少數(shù)據(jù)庫的壓力。企業(yè)管理系統(tǒng)從數(shù)據(jù)庫中取出數(shù)據(jù),并保存到緩存中,在需要使用該數(shù)據(jù)時直接從緩存讀取,減少了與數(shù)據(jù)庫的交互,并提高了數(shù)據(jù)讀取速度。
數(shù)據(jù)保存在緩存中,隨著數(shù)據(jù)時效性的改變,就會涉及到緩存失效問題,即將緩存中舊的數(shù)據(jù)及時清除。傳統(tǒng)技術(shù)中,緩存是依靠鍵值對(Key-Value)的Map方式保存數(shù)據(jù),其中Key為緩存中保存(獲取)數(shù)據(jù)的唯一標(biāo)識,Value為保存在緩存中數(shù)據(jù)的值。因此,傳統(tǒng)技術(shù)中,緩存失效是根據(jù)Key將數(shù)據(jù)從緩存中逐條刪除。當(dāng)企業(yè)管理系統(tǒng)所使用的緩存數(shù)據(jù)量比較大時,傳統(tǒng)技術(shù)的處理就會比較耗時,從而造成性能問題。
發(fā)明內(nèi)容
基于此,有必要提供一種緩存失效方法和裝置,應(yīng)用本方法和裝置,能夠提高清除緩存中數(shù)據(jù)的效率。
一種緩存失效方法,包括:
通過第一鍵值對Key1:Value1的Map方式在緩存中存取第一數(shù)據(jù),所述Key1中包含基本碼和所述第一數(shù)據(jù)失效前的第一隨機(jī)碼,所述Value1為所述第一數(shù)據(jù)的值;
所述第一數(shù)據(jù)的時效性發(fā)生改變,使所述第一數(shù)據(jù)失效;
通過第二鍵值對Key2:Value2的Map方式在緩存中存取第二數(shù)據(jù),所述Key2中包含所述基本碼和所述第一數(shù)據(jù)失效后的第二隨機(jī)碼,所述Value2為所述第二數(shù)據(jù)的值。
在其中一個實(shí)施例中,在所述通過第一鍵值對Key1:Value1的Map方式在緩存中存取第一數(shù)據(jù)的步驟之前,所述方法還包括:
從數(shù)據(jù)庫中讀取所述第一數(shù)據(jù);
在所述通過第二鍵值對Key2:Value2的Map方式在緩存中存取第二數(shù)據(jù)的步驟之前,所述方法還包括:
從數(shù)據(jù)庫中讀取所述第二數(shù)據(jù)。
在其中一個實(shí)施例中,所述基本碼中包括存取所述第一數(shù)據(jù)和所述第二數(shù)據(jù)對應(yīng)用戶的用戶標(biāo)識,以及所述第一數(shù)據(jù)和所述第二數(shù)據(jù)對應(yīng)的應(yīng)用標(biāo)識。
在其中一個實(shí)施例中,所述通過第一鍵值對Key1:Value1的Map方式在緩存中存取第一數(shù)據(jù)的步驟,包括:
生成第一隨機(jī)碼,并以所述基本碼和所述第一隨機(jī)碼組成所述Key1;
將第一鍵值對Key1:Value1保存到緩存中;
通過所述Key1在緩存中獲取所述Value1對應(yīng)的所述第一數(shù)據(jù);
所述通過第二鍵值對Key2:Value2的Map方式在緩存中存取第二數(shù)據(jù)的步驟,包括:
生成第二隨機(jī)碼,并以所述基本碼和所述第二隨機(jī)碼組成所述Key2;
將第二鍵值對Key2:Value2保存到緩存中;
通過所述Key2在緩存中獲取所述Value2對應(yīng)的所述第二數(shù)據(jù)。
在其中一個實(shí)施例中,所述第一數(shù)據(jù)的時效性發(fā)生改變,使所述第一數(shù)據(jù)失效的步驟包括:
所述基本碼中的用戶標(biāo)識所對應(yīng)的用戶權(quán)限發(fā)生變化,或所述基本碼中的應(yīng)用標(biāo)識所對應(yīng)的應(yīng)用權(quán)限發(fā)生改變,使所述第一數(shù)據(jù)失效。
一種緩存失效裝置,包括:
緩存保存模塊,用于在第一數(shù)據(jù)失效前通過第一鍵值對Key1:Value1的Map方式在緩存中保存第一數(shù)據(jù),所述Key1中包含基本碼和所述第一數(shù)據(jù)失效前的第一隨機(jī)碼,所述Value1為所述第一數(shù)據(jù)的值;所述緩存保存單元,還用于在所述第一數(shù)據(jù)失效后通過第二鍵值對Key2:Value2的Map方式在緩存中保存第二數(shù)據(jù),所述Key2中包含所述基本碼和所述第一數(shù)據(jù)失效后的第二隨機(jī)碼,所述Value2為所述第二數(shù)據(jù)的值;
時效監(jiān)控模塊,用于獲取所述第一數(shù)據(jù)的時效性發(fā)生改變的信息;
緩存讀取模塊,用于在所述第一數(shù)據(jù)失效前通過所述Key1從緩存中獲取第一數(shù)據(jù),以及在所述第一數(shù)據(jù)失效后通過所述Key2從緩存中獲取第二數(shù)據(jù)。
在其中一個實(shí)施例中,所述裝置還包括數(shù)據(jù)庫讀取模塊,所述數(shù)據(jù)庫讀取模塊用于從數(shù)據(jù)庫中讀取所述第一數(shù)據(jù)及所述第二數(shù)據(jù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于金蝶軟件(中國)有限公司,未經(jīng)金蝶軟件(中國)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310754652.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 逐出高速緩存的行的電路布置、數(shù)據(jù)處理系統(tǒng)和方法
- 共享緩存管理系統(tǒng)及方法
- 分布式緩存系統(tǒng)、數(shù)據(jù)的緩存方法及緩存數(shù)據(jù)的查詢方法
- 一種緩存替換方法;裝置和系統(tǒng)
- 加速引擎及處理器
- 一種日志緩存方法、系統(tǒng)、設(shè)備及計算機(jī)可讀存儲介質(zhì)
- 緩存控制方法、裝置和計算機(jī)可讀存儲介質(zhì)
- 至少具有三個緩存級別的緩存層級的混合低級緩存包含策略
- 基于雙緩存區(qū)的緩存方法、裝置、設(shè)備及存儲介質(zhì)
- 緩存預(yù)載方法、裝置、處理器芯片及服務(wù)器





