本發(fā)明涉及數(shù)據(jù)庫緩存領(lǐng)域,尤其涉及一種應(yīng)用節(jié)點緩存更新方法、存儲介質(zhì)及終端。
背景技術(shù):
1、緩存技術(shù)的歷史可以追溯到計算機(jī)產(chǎn)業(yè)的早期,而隨著計算機(jī)技術(shù)的發(fā)展,緩存技術(shù)也不斷演進(jìn)和創(chuàng)新,現(xiàn)在已經(jīng)成為計算機(jī)系統(tǒng)中必不可少的組成部分。最早的緩存技術(shù)是瀏覽器緩存,即在本地計算機(jī)上存儲一些網(wǎng)頁資源,以便在下次訪問時快速加載。后來,隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,緩存技術(shù)也逐漸發(fā)展起來,出現(xiàn)了各種不同類型的緩存技術(shù),例如靜態(tài)資源文件緩存、內(nèi)容分發(fā)網(wǎng)絡(luò)(cdn-content?delivery?network)緩存、數(shù)據(jù)庫緩存和分布式緩存等。
2、在互聯(lián)網(wǎng)領(lǐng)域中,緩存技術(shù)也扮演著非常重要的角色,它可以顯著提高網(wǎng)站和應(yīng)用程序的性能和可用性,緩解服務(wù)器壓力,降低帶寬成本,提高用戶體驗等。目前互聯(lián)網(wǎng)中,主要使用的是數(shù)據(jù)庫緩存和分布式緩存,傳統(tǒng)的數(shù)據(jù)庫本地緩存更新算法,一般是給本地緩存數(shù)據(jù)設(shè)置一個有效時間,當(dāng)訪問該本地緩存數(shù)據(jù)時,首先檢查本地緩存數(shù)據(jù)的有效時間是否過期,如果沒有,則直接使用本地緩存中的數(shù)據(jù),如果過期,則重新查詢數(shù)據(jù)庫,將查到的最新數(shù)據(jù)更新本地緩存中的舊的數(shù)據(jù)。但如果某一個應(yīng)用節(jié)點中大量緩存數(shù)據(jù)恰巧在同一個時間點失效,而服務(wù)本身是高流量服務(wù),這些緩存數(shù)據(jù)的訪問量很大,那么大量的查詢請求就會在同一時間穿過緩存層,透傳到數(shù)據(jù)庫層,數(shù)據(jù)庫可能會承受不了突然暴增的訪問請求,訪問變慢,甚至于崩潰,導(dǎo)致整個服務(wù)不穩(wěn)定。
技術(shù)實現(xiàn)思路
1、本發(fā)明實施例提供了一種應(yīng)用節(jié)點緩存更新方法、存儲介質(zhì)及終端,通過預(yù)定的緩存周期設(shè)置方式,對一應(yīng)用節(jié)點內(nèi)同時建立或同時失效的多個本地緩存設(shè)置不同的緩存周期,使該多個本地緩存后續(xù)在不同時間失效。
2、第一方面,本發(fā)明實施例提供了一種應(yīng)用節(jié)點緩存更新方法,包括:
3、目標(biāo)應(yīng)用節(jié)點在第一時間戳t1,建立k個本地緩存;k>0,且k為整數(shù);
4、所述目標(biāo)應(yīng)用節(jié)點根據(jù)第ni本地緩存,設(shè)置所述第ni本地緩存的緩存周期ti;其中,1≤i≤k,且i為整數(shù);
5、當(dāng)所述第ni本地緩存在第tni時間戳失效后,所述目標(biāo)應(yīng)用節(jié)點更新所述第ni本地緩存,得到新第ni本地緩存。
6、第二方面,本發(fā)明實施例提供了一種應(yīng)用節(jié)點緩存更新方法,包括:
7、目標(biāo)應(yīng)用節(jié)點確定k個本地緩存;所述k個本地緩存均在第一時間戳失效,且具有相同的緩存周期t;k>0,且k為整數(shù);
8、所述目標(biāo)應(yīng)用節(jié)點在第一時間戳將所述第ni本地緩存的緩存周期更新設(shè)置為ti;其中,1≤i≤k,且i為整數(shù);
9、所述目標(biāo)應(yīng)用節(jié)點更新所述第ni本地緩存,得到新第ni本地緩存。
10、第三方面,本發(fā)明實施例提供一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,上述計算機(jī)程序被處理器執(zhí)行時實現(xiàn)上述第一個方面所述的方法步驟或上述第二個方面所述的方法步驟。
11、第四方面,本發(fā)明實施例提供一種終端,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機(jī)程序,所述處理器執(zhí)行所述計算機(jī)程序時實現(xiàn)上述第一個方面所述的方法步驟或上述第二個方面所述的方法步驟。
12、本發(fā)明實施例提供的應(yīng)用節(jié)點緩存更新方法、存儲介質(zhì)及終端,具備以下技術(shù)效果:
13、本發(fā)明實施例通過獲取某一應(yīng)用節(jié)點內(nèi),同時建立或同時失效的多個本地緩存,通過各本地緩存的哈希值和預(yù)設(shè)時間周期或本地緩存的原本緩存周期,以及預(yù)定的設(shè)置方式,對每個本地緩存設(shè)置不同的緩存周期,并在本地緩存失效后更新本地緩存。應(yīng)用上述方法,可使同一應(yīng)用節(jié)點內(nèi)同時建立或同時失效的多個本地緩存具有不同的緩存周期,后續(xù)在不同時間失效。解決了數(shù)據(jù)庫在同一時間接收到大量訪問請求,導(dǎo)致訪問變慢、崩潰和服務(wù)不穩(wěn)定的問題。
1.一種應(yīng)用節(jié)點緩存更新方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述目標(biāo)應(yīng)用節(jié)點根據(jù)第ni本地緩存,設(shè)置所述第ni本地緩存的緩存周期ti,包括:
3.根據(jù)權(quán)利要求2所述方法,其特征在于,所述第時間戳通過如下方式獲取:
4.根據(jù)權(quán)利要求1至3任一項所述方法,其特征在于,所述目標(biāo)應(yīng)用節(jié)點更新所述第ni本地緩存,得到新第ni本地緩存,包括:
5.根據(jù)權(quán)利要求1至3任一項所述方法,其特征在于,所述目標(biāo)應(yīng)用節(jié)點更新所述第ni本地緩存,得到新第ni本地緩存,包括:
6.一種應(yīng)用節(jié)點緩存更新方法,其特征在于,包括:
7.根據(jù)權(quán)利要求6所述方法,其特征在于,所述目標(biāo)應(yīng)用節(jié)點在第一時間戳將所述第ni本地緩存的緩存周期更新設(shè)置為ti,包括:
8.根據(jù)權(quán)利要求6或7所述方法,其特征在于,所述目標(biāo)應(yīng)用節(jié)點更新所述第ni本地緩存,得到新第ni本地緩存,包括:
9.一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,其特征在于,所述計算機(jī)程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至5中任一項所述方法或如權(quán)利要求6至8中任一項所述方法。
10.一種終端,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計算機(jī)程序時實現(xiàn)如權(quán)利要求1至5中任一項所述方法或如權(quán)利要求6至8中任一項所述方法。