本發(fā)明涉及移動緩存更新
技術(shù)領(lǐng)域:
:,尤其涉及一種緩存更新方法及設(shè)備。
背景技術(shù):
::緩存技術(shù)可以用來解決服務(wù)器產(chǎn)品中的中央處理器速度與內(nèi)存速度的差異性問題,同時也能提高對用戶請求的響應(yīng)速度。目前,通用的數(shù)據(jù)緩存方案均是將原數(shù)據(jù)庫中的數(shù)據(jù)保存到服務(wù)器中,但是當(dāng)數(shù)據(jù)庫中的數(shù)據(jù)發(fā)生變化時,需要同步更新緩存中的對應(yīng)數(shù)據(jù)?,F(xiàn)有技術(shù)采用的方案有:定時更新緩存,會存在數(shù)據(jù)更新無法及時傳達給用戶的問題,但是不太適實時性要求很高的互聯(lián)網(wǎng)產(chǎn)品;也可以采用后臺頁面操作數(shù)據(jù)進行更新,有新需求或需求變更時需要寫代碼進行實現(xiàn),較為麻煩,且需要維護的代碼太多,效率很低。技術(shù)實現(xiàn)要素:本發(fā)明的主要目的在于提出一種緩存更新方法及設(shè)備,旨在存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,從而根據(jù)數(shù)據(jù)包進行緩存的更新,這樣就不需要增加額外代碼來維護緩存更新過程。為實現(xiàn)上述目的,本發(fā)明提出一種緩存更新方法,所述方法包括:監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;如果是,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新??蛇x的,所述根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新,包括:根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新??蛇x的,所述根據(jù)所述接口列表,對緩存內(nèi)容進行更新,包括:根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存進行更新??蛇x的,所述監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,包括:根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件??蛇x的,所述緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中包含數(shù)據(jù)表名稱以及相關(guān)聯(lián)的緩存鍵列表。可選的,所述根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新,包括:根據(jù)所述數(shù)據(jù)表,獲得待緩存的數(shù)據(jù);將所述待緩存的數(shù)據(jù)放入第一緩存區(qū);刪除所述數(shù)據(jù)表對應(yīng)的原緩存數(shù)據(jù)。相較于現(xiàn)有技術(shù),本發(fā)明所提出的緩存更新方法,通過監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,在日志文件中是否存在具有新增內(nèi)容的目標(biāo)日志文件時解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。應(yīng)用本發(fā)明實施例,緩存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,從而根據(jù)數(shù)據(jù)包進行緩存的更新,這樣就不需要增加額外代碼來維護緩存更新過程。另外,為實現(xiàn)上述目的,本發(fā)明提出了一種緩存更新設(shè)備,所述緩存更新設(shè)備包括:存儲器、處理器及通信總線;所述通信總線用于實現(xiàn)處理器和存儲器之間的連接通信;所述處理器用于緩存更新程序,以實現(xiàn)以下步驟:監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;如果是,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新??蛇x的,所述處理器還用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新??蛇x的,所述處理器還用于執(zhí)行應(yīng)緩存更新程序,以實現(xiàn)以下步驟:根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存進行更新。可選的,所述處理器用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件??蛇x的,所述處理器用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)所述數(shù)據(jù)表,獲得待緩存的數(shù)據(jù);將所述待緩存的數(shù)據(jù)放入第一緩存區(qū);刪除所述數(shù)據(jù)表對應(yīng)的原緩存數(shù)據(jù)。相較于現(xiàn)有技術(shù),本發(fā)明所提出的緩存更新設(shè)備,通過監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,在日志文件中是否存在具有新增內(nèi)容的目標(biāo)日志文件時解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。緩存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,這樣就不需要增加額外代碼來維護緩存更新過程。為實現(xiàn)上述目的,本發(fā)明提出了一種計算機可讀存儲介質(zhì),應(yīng)用于移動終端,所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,以使所述一個或者多個處理器執(zhí)行以下步驟:監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;如果是,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新??蛇x的,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,實現(xiàn)如下步驟:根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新??蛇x的,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,實現(xiàn)如下步驟:根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存進行更新。可選的,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,實現(xiàn)如下步驟:根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件??蛇x的,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,實現(xiàn)如下步驟:所述緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中包含數(shù)據(jù)表名稱以及相關(guān)聯(lián)的緩存鍵列表??蛇x的,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,實現(xiàn)如下步驟:根據(jù)所述數(shù)據(jù)表,獲得待緩存的數(shù)據(jù);將所述待緩存的數(shù)據(jù)放入第一緩存區(qū);刪除所述數(shù)據(jù)表對應(yīng)的原緩存數(shù)據(jù)。相較于現(xiàn)有技術(shù),本發(fā)明所提出的計算機可讀存儲介質(zhì),通過監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,在日志文件中是否存在具有新增內(nèi)容的目標(biāo)日志文件時解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。緩存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,這樣就不需要增加額外代碼來維護緩存更新過程。附圖說明圖1為實現(xiàn)本發(fā)明各個實施例中一可選的移動終端的硬件結(jié)構(gòu)示意圖;圖2為如圖1所示的移動終端的無線通信系統(tǒng)示意圖;圖3為本發(fā)明所述的緩存更新方法的流程示意圖;圖4為應(yīng)用本發(fā)明所述的緩存更新方法的第一種實施例示意圖;圖5為應(yīng)用本發(fā)明所述的緩存更新方法的第二種實施例示意圖;圖6為本發(fā)明所述的緩存更新設(shè)備的結(jié)構(gòu)示意圖;圖7為本發(fā)明所述的計算機可讀存儲介質(zhì)的結(jié)構(gòu)示意圖。附圖標(biāo)記:本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。具體實施方式應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身沒有特定的意義。因此,“模塊”、“部件”或“單元”可以混合地使用。終端可以以各種形式來實施。例如,本發(fā)明中描述的終端可以包括諸如手機、平板電腦、筆記本電腦、掌上電腦、個人數(shù)字助理(personaldigitalassistant,pda)、便捷式媒體播放器(portablemediaplayer,pmp)、導(dǎo)航裝置、可穿戴設(shè)備、智能手環(huán)、計步器等移動終端,以及諸如數(shù)字tv、臺式計算機等固定終端。后續(xù)描述中將以移動終端為例進行說明,本領(lǐng)域技術(shù)人員將理解的是,除了特別用于移動目的的元件之外,根據(jù)本發(fā)明的實施方式的構(gòu)造也能夠應(yīng)用于固定類型的終端。請參閱圖1,其為實現(xiàn)本發(fā)明各個實施例的一種移動終端的硬件結(jié)構(gòu)示意圖,該移動終端100可以包括:rf(radiofrequency,射頻)單元101、wifi模塊102、音頻輸出單元103、a/v(音頻/視頻)輸入單元104、傳感器105、顯示單元106、用戶輸入單元107、接口單元108、存儲器109、處理器110、以及電源111等部件。本領(lǐng)域技術(shù)人員可以理解,圖1中示出的移動終端結(jié)構(gòu)并不構(gòu)成對移動終端的限定,移動終端可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。下面結(jié)合圖1對移動終端的各個部件進行具體的介紹:射頻單元101可用于收發(fā)信息或通話過程中,信號的接收和發(fā)送,具體的,將基站的下行信息接收后,給處理器110處理;另外,將上行的數(shù)據(jù)發(fā)送給基站。通常,射頻單元101包括但不限于天線、至少一個放大器、收發(fā)信機、耦合器、低噪聲放大器、雙工器等。此外,射頻單元101還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。上述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于gsm(globalsystemofmobilecommunication,全球移動通訊系統(tǒng))、gprs(generalpacketradioservice,通用分組無線服務(wù))、cdma2000(codedivisionmultipleaccess2000,碼分多址2000)、wcdma(widebandcodedivisionmultipleaccess,寬帶碼分多址)、td-scdma(timedivision-synchronouscodedivisionmultipleaccess,時分同步碼分多址)、fdd-lte(frequencydivisionduplexing-longtermevolution,頻分雙工長期演進)和tdd-lte(timedivisionduplexing-longtermevolution,分時雙工長期演進)等。wifi屬于短距離無線傳輸技術(shù),移動終端通過wifi模塊102可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖1示出了wifi模塊102,但是可以理解的是,其并不屬于移動終端的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。音頻輸出單元103可以在移動終端100處于呼叫信號接收模式、通話模式、記錄模式、語音識別模式、廣播接收模式等等模式下時,將射頻單元101或wifi模塊102接收的或者在存儲器109中存儲的音頻數(shù)據(jù)轉(zhuǎn)換成音頻信號并且輸出為聲音。而且,音頻輸出單元103還可以提供與移動終端100執(zhí)行的特定功能相關(guān)的音頻輸出(例如,呼叫信號接收聲音、消息接收聲音等等)。音頻輸出單元103可以包括揚聲器、蜂鳴器等等。a/v輸入單元104用于接收音頻或視頻信號。a/v輸入單元104可以包括圖形處理器(graphicsprocessingunit,gpu)1041和麥克風(fēng)1042,圖形處理器1041對在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置(如攝像頭)獲得的靜態(tài)圖片或視頻的圖像數(shù)據(jù)進行處理。處理后的圖像幀可以顯示在顯示單元106上。經(jīng)圖形處理器1041處理后的圖像幀可以存儲在存儲器109(或其它存儲介質(zhì))中或者經(jīng)由射頻單元101或wifi模塊102進行發(fā)送。麥克風(fēng)1042可以在電話通話模式、記錄模式、語音識別模式等等運行模式中經(jīng)由麥克風(fēng)1042接收聲音(音頻數(shù)據(jù)),并且能夠?qū)⑦@樣的聲音處理為音頻數(shù)據(jù)。處理后的音頻(語音)數(shù)據(jù)可以在電話通話模式的情況下轉(zhuǎn)換為可經(jīng)由射頻單元101發(fā)送到移動通信基站的格式輸出。麥克風(fēng)1042可以實施各種類型的噪聲消除(或抑制)算法以消除(或抑制)在接收和發(fā)送音頻信號的過程中產(chǎn)生的噪聲或者干擾。移動終端100還包括至少一種傳感器105,比如光傳感器、運動傳感器以及其他傳感器。具體地,光傳感器包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板1061的亮度,接近傳感器可在移動終端100移動到耳邊時,關(guān)閉顯示面板1061和/或背光。作為運動傳感器的一種,加速計傳感器可檢測各個方向上(一般為三軸)加速度的大小,靜止時可檢測出重力的大小及方向,可用于識別手機姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計姿態(tài)校準(zhǔn))、振動識別相關(guān)功能(比如計步器、敲擊)等;至于手機還可配置的指紋傳感器、壓力傳感器、虹膜傳感器、分子傳感器、陀螺儀、氣壓計、濕度計、溫度計、紅外線傳感器等其他傳感器,在此不再贅述。顯示單元106用于顯示由用戶輸入的信息或提供給用戶的信息。顯示單元106可包括顯示面板1061,可以采用液晶顯示器(liquidcrystaldisplay,lcd)、有機發(fā)光二極管(organiclight-emittingdiode,oled)等形式來配置顯示面板1061。用戶輸入單元107可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與移動終端的用戶設(shè)置以及功能控制有關(guān)的鍵信號輸入。具體地,用戶輸入單元107可包括觸控面板1071以及其他輸入設(shè)備1072。觸控面板1071,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板1071上或在觸控面板1071附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動相應(yīng)的連接裝置。觸控面板1071可包括觸摸檢測裝置和觸摸控制器兩個部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號,將信號傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點坐標(biāo),再送給處理器110,并能接收處理器110發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實現(xiàn)觸控面板1071。除了觸控面板1071,用戶輸入單元107還可以包括其他輸入設(shè)備1072。具體地,其他輸入設(shè)備1072可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種,具體此處不做限定。進一步地,觸控面板1071可覆蓋顯示面板1061,當(dāng)觸控面板1071檢測到在其上或附近的觸摸操作后,傳送給處理器110以確定觸摸事件的類型,隨后處理器110根據(jù)觸摸事件的類型在顯示面板1061上提供相應(yīng)的視覺輸出。雖然在圖1中,觸控面板1071與顯示面板1061是作為兩個獨立的部件來實現(xiàn)移動終端的輸入和輸出功能,但是在某些實施例中,可以將觸控面板1071與顯示面板1061集成而實現(xiàn)移動終端的輸入和輸出功能,具體此處不做限定。接口單元108用作至少一個外部裝置與移動終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機端口、外部電源(或電池充電器)端口、有線或無線數(shù)據(jù)端口、存儲卡端口、用于連接具有識別模塊的裝置的端口、音頻輸入/輸出(i/o)端口、視頻i/o端口、耳機端口等等。接口單元108可以用于接收來自外部裝置的輸入(例如,數(shù)據(jù)信息、電力等等)并且將接收到的輸入傳輸?shù)揭苿咏K端100內(nèi)的一個或多個元件或者可以用于在移動終端100和外部裝置之間傳輸數(shù)據(jù)。存儲器109可用于存儲軟件程序以及各種數(shù)據(jù)。存儲器109可主要包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲數(shù)據(jù)區(qū)可存儲根據(jù)手機的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲器109可以包括高速隨機存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他易失性固態(tài)存儲器件。處理器110是移動終端的控制中心,利用各種接口和線路連接整個移動終端的各個部分,通過運行或執(zhí)行存儲在存儲器109內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲在存儲器109內(nèi)的數(shù)據(jù),執(zhí)行移動終端的各種功能和處理數(shù)據(jù),從而對移動終端進行整體監(jiān)控。處理器110可包括一個或多個處理單元;優(yōu)選的,處理器110可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信。可以理解的是,上述調(diào)制解調(diào)處理器也可以不集成到處理器110中。移動終端100還可以包括給各個部件供電的電源111(比如電池),優(yōu)選的,電源111可以通過電源管理系統(tǒng)與處理器110邏輯相連,從而通過電源管理系統(tǒng)實現(xiàn)管理充電、放電、以及功耗管理等功能。盡管圖1未示出,移動終端100還可以包括藍牙模塊等,在此不再贅述。為了便于理解本發(fā)明實施例,下面對本發(fā)明的移動終端所基于的通信網(wǎng)絡(luò)系統(tǒng)進行描述。請參閱圖2,圖2為本發(fā)明實施例提供的一種通信網(wǎng)絡(luò)系統(tǒng)架構(gòu)圖,該通信網(wǎng)絡(luò)系統(tǒng)為通用移動通信技術(shù)的lte系統(tǒng),該lte系統(tǒng)包括依次通訊連接的ue(userequipment,用戶設(shè)備)201,e-utran(evolvedumtsterrestrialradioaccessnetwork,演進式umts陸地?zé)o線接入網(wǎng))202,epc(evolvedpacketcore,演進式分組核心網(wǎng))203和運營商的ip業(yè)務(wù)204。具體地,ue201可以是上述終端100,此處不再贅述。e-utran202包括enodeb2021和其它enodeb2022等。其中,enodeb2021可以通過回程(backhaul)(例如x2接口)與其它enodeb2022連接,enodeb2021連接到epc203,enodeb2021可以提供ue201到epc203的接入。epc203可以包括mme(mobilitymanagemententity,移動性管理實體)2031,hss(homesubscriberserver,歸屬用戶服務(wù)器)2032,其它mme2033,sgw(servinggateway,服務(wù)網(wǎng)關(guān))2034,pgw(pdngateway,分組數(shù)據(jù)網(wǎng)絡(luò)網(wǎng)關(guān))2035和pcrf(policyandchargingrulesfunction,政策和資費功能實體)2036等。其中,mme2031是處理ue201和epc203之間信令的控制節(jié)點,提供承載和連接管理。hss2032用于提供一些寄存器來管理諸如歸屬位置寄存器(圖中未示)之類的功能,并且保存有一些有關(guān)服務(wù)特征、數(shù)據(jù)速率等用戶專用的信息。所有用戶數(shù)據(jù)都可以通過sgw2034進行發(fā)送,pgw2035可以提供ue201的ip地址分配以及其它功能,pcrf2036是業(yè)務(wù)數(shù)據(jù)流和ip承載資源的策略與計費控制策略決策點,它為策略與計費執(zhí)行功能單元(圖中未示)選擇及提供可用的策略和計費控制決策。ip業(yè)務(wù)204可以包括因特網(wǎng)、內(nèi)聯(lián)網(wǎng)、ims(ipmultimediasubsystem,ip多媒體子系統(tǒng))或其它ip業(yè)務(wù)等。雖然上述以lte系統(tǒng)為例進行了介紹,但本領(lǐng)域技術(shù)人員應(yīng)當(dāng)知曉,本發(fā)明不僅僅適用于lte系統(tǒng),也可以適用于其他無線通信系統(tǒng),例如gsm、cdma2000、wcdma、td-scdma以及未來新的網(wǎng)絡(luò)系統(tǒng)等,此處不做限定?;谏鲜鲆苿咏K端硬件結(jié)構(gòu)以及通信網(wǎng)絡(luò)系統(tǒng),提出本發(fā)明方法各個實施例。為解決現(xiàn)有技術(shù)問題,本發(fā)明提出一種緩存更新方法、設(shè)備以及一種計算機可讀存儲介質(zhì),以下分別進行詳細說明。需要說明的是,本發(fā)明實施例提供的一種緩存更新方法、設(shè)備以及一種計算機可讀存儲介質(zhì),能夠?qū)崿F(xiàn)當(dāng)數(shù)據(jù)庫數(shù)據(jù)發(fā)生變化時自動更新其關(guān)聯(lián)緩存。如圖3所示,在本實施例中,緩存更新方法可以分為以下步驟:步驟s310為:監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;步驟s320為:判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;步驟s330為:在s320的判斷結(jié)果為是的情況下,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;步驟s340為:根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。上述這些步驟根據(jù)不同的需求調(diào)整順序,或者省略某些步驟?;蛘哌€可以根據(jù)需求補充其他的步驟??梢岳斫獾氖?,本發(fā)明實施例的緩存更新方法的執(zhí)行主體可以為緩存更新設(shè)備,所述應(yīng)用緩存更新設(shè)備運行在服務(wù)器中,在需要進行緩存更新時進行調(diào)用。s310,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件。需要說明的是,用戶通過http接口來訪問服務(wù)器獲取數(shù)據(jù)。服務(wù)器根據(jù)接口名稱與參數(shù)值進行緩存鍵的編碼,并將所有的緩存數(shù)據(jù)存在緩存中,如目前主流的redis、memcache。編碼規(guī)則是接口名稱?參數(shù)名=參數(shù)值&參數(shù)名=參數(shù)值2。例如一個接口名稱是獲取應(yīng)用列表getapplist,參數(shù)是頁碼1,單頁數(shù)據(jù)量20。那么該緩存鍵即“getapplist?pageno=1&pagesize=2”。在調(diào)用該接口方法生成緩存鍵的時候,服務(wù)器會根據(jù)其訪問數(shù)據(jù)庫的日志,解析出其相關(guān)聯(lián)的數(shù)據(jù)表,如應(yīng)用表、應(yīng)用分類表,并保存在緩存鍵關(guān)聯(lián)數(shù)據(jù)表中,同時為了提高系統(tǒng)性能,也寫一份在內(nèi)存的緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中,該哈希表的鍵是數(shù)據(jù)表名稱,值是其相關(guān)聯(lián)的緩存鍵列表。需要說明的是,mysql是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典mysqlab公司開發(fā),目前屬于oracle旗下產(chǎn)品。mysql是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在web應(yīng)用方面,mysql是最好的rdbms(relationaldatabasemanagementsystem,關(guān)系數(shù)據(jù)庫管理系統(tǒng))應(yīng)用軟件。mysql是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性??梢岳斫獾氖牵琺ysql數(shù)據(jù)庫的任務(wù)操作都會體現(xiàn)在二進制binlog日志文件中,所以當(dāng)日志文件發(fā)生變化時,表明數(shù)據(jù)庫中的數(shù)據(jù)發(fā)生變化,否則,數(shù)據(jù)庫沒有發(fā)生變化。那么,通過監(jiān)控數(shù)據(jù)庫對應(yīng)的二進制日志文件,即可監(jiān)控到數(shù)據(jù)庫的數(shù)據(jù)變化。s320,判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件,如果是,執(zhí)行s330。mysql日志:主要包含:錯誤日志、查詢?nèi)罩?、慢查詢?nèi)罩?、事?wù)日志、二進制日志;日志是mysql數(shù)據(jù)庫的重要組成部分。日志文件中記錄著mysql數(shù)據(jù)庫運行期間發(fā)生的變化;也就是說用來記錄mysql數(shù)據(jù)庫的客戶端連接狀況、sql語句的執(zhí)行情況和錯誤信息等。當(dāng)數(shù)據(jù)庫遭到意外的損壞時,可以通過日志查看文件出錯的原因,并且可以通過日志文件進行數(shù)據(jù)恢復(fù)。二進制日志也叫作變更日志,主要用于記錄修改數(shù)據(jù)或有可能引起數(shù)據(jù)改變的mysql語句,并且記錄了語句發(fā)生時間、執(zhí)行時長、操作的數(shù)據(jù)等等。所以說通過二進制日志可以查詢mysql數(shù)據(jù)庫中進行了哪些變化。所以通過持續(xù)對日志文件的監(jiān)控能到日志文件中的變化,當(dāng)日志文件發(fā)生變化時,確定內(nèi)容變化了的日志文件為目標(biāo)日志文件。s330,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表。需要說明的是,當(dāng)日志文件有新增內(nèi)容時,監(jiān)控任務(wù)解析日志,如果日志屬于寫、刪除或更新語句,進一步解析其改變的數(shù)據(jù)表,然后提交緩存更新任務(wù),任務(wù)的入口參數(shù)即該數(shù)據(jù)表的名稱。本發(fā)明實施例中的數(shù)據(jù)表是指每一張具體的數(shù)據(jù)存儲表,存儲在數(shù)據(jù)庫中的。例如購物網(wǎng)站中的商品,會有商品的參數(shù)存儲在數(shù)據(jù)表,具體的,數(shù)據(jù)表里面的數(shù)據(jù)可以包括商品名稱、售價、圖片等。不同的功能的數(shù)據(jù)庫可對應(yīng)的數(shù)據(jù)表不相同,本發(fā)明實施例中的數(shù)據(jù)表形式僅僅是示例性的,不構(gòu)成對本發(fā)明實施例的具體限定。本領(lǐng)域技術(shù)人員可以理解的是,通過目標(biāo)日志文件的變化,能夠得到具體變化的內(nèi)容,將變化的內(nèi)容與數(shù)據(jù)表進行對應(yīng),從而再解析數(shù)據(jù)表中的具體變化。示例性的,目標(biāo)日志文件變化對應(yīng)為商品a的變化,那么通過商品a的變化找到數(shù)據(jù)表里對應(yīng)的商品a的信息,如商品a的名稱、規(guī)格、圖片,通過解析得到商品圖片發(fā)生變化,新增商品a對應(yīng)的圖片2幅。s340,根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。本發(fā)明的一個實施例中,可以根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新。根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存內(nèi)容進行更新。接口列表就是很多接口所組成的,每一個接口對應(yīng)一個用戶請求,通過這個接口均可以生成某個具體的緩存,所以一個用戶請求對應(yīng)一個緩存,所以數(shù)據(jù)表可以對應(yīng)多個接口。數(shù)據(jù)表關(guān)聯(lián)到多個緩存時,就可能涉及到不同的接口方法,所以有這個方法列在緩存更新任務(wù)中,根據(jù)該數(shù)據(jù)表的名稱,從上面所說的緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中,找到該數(shù)據(jù)表關(guān)聯(lián)的接口方法列表。接著再次將緩存更新的二次任務(wù)提交到線程池中,其入口參數(shù)是緩存鍵。這樣可以保證當(dāng)一個數(shù)據(jù)表關(guān)聯(lián)多個緩存鍵時,緩存的更新不會有滯后。在緩存更新的二次任務(wù)中,根據(jù)緩存鍵解析其接口方法和參數(shù)值。然后調(diào)用該接口方法,對緩存進行更新。例如更新的數(shù)據(jù)表是應(yīng)用分類表,其關(guān)聯(lián)的緩存鍵是“getapplist?pageno=1&pagesize=2”,那么可以解析得其接口方法為getapplist,參數(shù)為pageno等于1,pagesize等于2。于是,調(diào)用getapplist(1,2)即可生成緩存值。本發(fā)明的一個實施例中,還可以設(shè)置監(jiān)控周期,具體的,根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件。監(jiān)控任務(wù)的周期可以在服務(wù)器的系統(tǒng)設(shè)置頁面中進行調(diào)整,如1秒、5秒、10秒等。可以理解的是,監(jiān)控的周期越短,得到變化數(shù)據(jù)越及時,用戶體驗越好,但是也會造成系統(tǒng)的壓力,所以根據(jù)多次經(jīng)驗積累,得到監(jiān)控周日為1秒時,在能夠保證用戶體驗的同時還不會造成太大的系統(tǒng)壓力。通過本發(fā)明實施例,可以保證當(dāng)數(shù)據(jù)更新頻繁時,緩存可以快速得到更新。用戶就可以及時看到數(shù)據(jù)的變化,從而提高用戶體驗。所述根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新,包括:根據(jù)所述數(shù)據(jù)表,獲得待緩存的數(shù)據(jù);將所述待緩存的數(shù)據(jù)放入第一緩存區(qū);刪除所述數(shù)據(jù)表對應(yīng)的原緩存數(shù)據(jù)。應(yīng)用本發(fā)明實施例,可以適用于雙緩存區(qū),除了對單緩存區(qū)的支持,該方案還支持雙緩沖區(qū)。即當(dāng)緩存數(shù)據(jù)更新時,先寫入另一個緩存區(qū),再將原緩存區(qū)的數(shù)據(jù)刪除。這樣用戶對于緩存數(shù)據(jù)的更新體驗就是無感的,保證了用戶體驗的最優(yōu)化。相較于現(xiàn)有技術(shù),本發(fā)明所提出的緩存更新方法,通過監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,在日志文件中是否存在具有新增內(nèi)容的目標(biāo)日志文件時解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。應(yīng)用本發(fā)明實施例,緩存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,從而根據(jù)數(shù)據(jù)包進行緩存的更新,這樣就不需要增加額外代碼來維護緩存更新過程。參見圖4,圖4為應(yīng)用本發(fā)明所述的緩存更新方法的實施例示意圖,包括如下步驟:s410,預(yù)設(shè)監(jiān)控周期為5s,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;s420,判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;s430,如果是,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;s440,根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新。參見圖5,圖5為應(yīng)用本發(fā)明所述的數(shù)據(jù)緩存方法的第二種實施例示意圖,包括如下步驟:s510,監(jiān)控mysql二進制文件是否發(fā)生變化;s520,如果是,解析新增的日志文件,并獲取針對變化的日志的操作命令以及操作表;s530,并在日志變化為寫、刪除和/或更新命令的情況下,根據(jù)數(shù)據(jù)表名獲取其關(guān)聯(lián)的緩存鍵列表;s540,根據(jù)緩存鍵列表中緩存鍵的信息進行解析,并獲得接口與對應(yīng)的參數(shù);s550,根據(jù)接口和參數(shù)進行緩存更新。參見圖6,圖6為緩存更新設(shè)備600,應(yīng)用于移動終端,所述動態(tài)信息顯示設(shè)備包括:處理器610、存儲器620及通信總線630;所述通信總線630用于實現(xiàn)處理器610和存儲器620之間的連接通信;所述處理器620用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;如果是,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。進一步地,所述處理器620還用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新。進一步地,所述處理器620還用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存內(nèi)容進行更新。進一步地,所述處理器620用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件。進一步地,所述處理器620還用于執(zhí)行緩存更新程序,以實現(xiàn)以下步驟:根據(jù)所述數(shù)據(jù)表,獲得待緩存的數(shù)據(jù);將所述待緩存的數(shù)據(jù)放入第一緩存區(qū);刪除所述數(shù)據(jù)表對應(yīng)的原緩存數(shù)據(jù)。相較于現(xiàn)有技術(shù),本發(fā)明所提出的緩存更新設(shè)備,通過監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,在日志文件中是否存在具有新增內(nèi)容的目標(biāo)日志文件時解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。應(yīng)用本發(fā)明實施例,緩存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,從而根據(jù)數(shù)據(jù)包進行緩存的更新,這樣就不需要增加額外代碼來維護緩存更新過程。需要說明的是,mysql是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典mysqlab公司開發(fā),目前屬于oracle旗下產(chǎn)品。mysql是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在web應(yīng)用方面,mysql是最好的rdbms(relationaldatabasemanagementsystem,關(guān)系數(shù)據(jù)庫管理系統(tǒng))應(yīng)用軟件。mysql是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。可以理解的是,mysql數(shù)據(jù)庫的任務(wù)操作都會體現(xiàn)在二進制binlog日志文件中,所以當(dāng)日志文件發(fā)生變化時,表明數(shù)據(jù)庫中的數(shù)據(jù)發(fā)生變化,否則,數(shù)據(jù)庫沒有發(fā)生變化。那么,通過監(jiān)控數(shù)據(jù)庫對應(yīng)的二進制日志文件,即可監(jiān)控到數(shù)據(jù)庫的數(shù)據(jù)變化。mysql日志:主要包含:錯誤日志、查詢?nèi)罩尽⒙樵內(nèi)罩?、事?wù)日志、二進制日志;日志是mysql數(shù)據(jù)庫的重要組成部分。日志文件中記錄著mysql數(shù)據(jù)庫運行期間發(fā)生的變化;也就是說用來記錄mysql數(shù)據(jù)庫的客戶端連接狀況、sql語句的執(zhí)行情況和錯誤信息等。當(dāng)數(shù)據(jù)庫遭到意外的損壞時,可以通過日志查看文件出錯的原因,并且可以通過日志文件進行數(shù)據(jù)恢復(fù)。二進制日志也叫作變更日志,主要用于記錄修改數(shù)據(jù)或有可能引起數(shù)據(jù)改變的mysql語句,并且記錄了語句發(fā)生時間、執(zhí)行時長、操作的數(shù)據(jù)等等。所以說通過二進制日志可以查詢mysql數(shù)據(jù)庫中進行了哪些變化。所以通過持續(xù)對日志文件的監(jiān)控能到日志文件中的變化,當(dāng)日志文件發(fā)生變化時,確定內(nèi)容變化了的日志文件為目標(biāo)日志文件。需要說明的是,當(dāng)日志文件有新增內(nèi)容時,監(jiān)控任務(wù)解析日志,如果日志屬于寫、刪除或更新語句,進一步解析其改變的數(shù)據(jù)表,然后提交緩存更新任務(wù),任務(wù)的入口參數(shù)即該數(shù)據(jù)表的名稱。本發(fā)明實施例中的數(shù)據(jù)表是指每一張具體的數(shù)據(jù)存儲表,存儲在數(shù)據(jù)庫中的。例如購物網(wǎng)站中的商品,會有商品的參數(shù)存儲在數(shù)據(jù)表,具體的,數(shù)據(jù)表里面的數(shù)據(jù)可以包括商品名稱、售價、圖片等。不同的功能的數(shù)據(jù)庫可對應(yīng)的數(shù)據(jù)表不相同,本發(fā)明實施例中的數(shù)據(jù)表形式僅僅是示例性的,不構(gòu)成對本發(fā)明實施例的具體限定。本領(lǐng)域技術(shù)人員可以理解的是,通過目標(biāo)日志文件的變化,能夠得到具體變化的內(nèi)容,將變化的內(nèi)容與數(shù)據(jù)表進行對應(yīng),從而再解析數(shù)據(jù)表中的具體變化。示例性的,目標(biāo)日志文件變化對應(yīng)為商品a的變化,那么通過商品a的變化找到數(shù)據(jù)表里對應(yīng)的商品a的信息,如商品a的名稱、規(guī)格、圖片,通過解析得到商品圖片發(fā)生變化,新增商品a對應(yīng)的圖片2幅。s340,根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。本發(fā)明的一個實施例中,可以根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新。根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存內(nèi)容進行更新。接口列表就是很多接口所組成的,每一個接口對應(yīng)一個用戶請求,通過這個接口均可以生成某個具體的緩存,所以一個用戶請求對應(yīng)一個緩存,所以數(shù)據(jù)表可以對應(yīng)多個接口。數(shù)據(jù)表關(guān)聯(lián)到多個緩存時,就可能涉及到不同的接口方法,所以有這個方法列在緩存更新任務(wù)中,根據(jù)該數(shù)據(jù)表的名稱,從上面所說的緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中,找到該數(shù)據(jù)表關(guān)聯(lián)的接口方法列表。接著再次將緩存更新的二次任務(wù)提交到線程池中,其入口參數(shù)是緩存鍵。這樣可以保證當(dāng)一個數(shù)據(jù)表關(guān)聯(lián)多個緩存鍵時,緩存的更新不會有滯后。在緩存更新的二次任務(wù)中,根據(jù)緩存鍵解析其接口方法和參數(shù)值。然后調(diào)用該接口方法,對緩存進行更新。例如更新的數(shù)據(jù)表是應(yīng)用分類表,其關(guān)聯(lián)的緩存鍵是“getapplist?pageno=1&pagesize=2”,那么可以解析得其接口方法為getapplist,參數(shù)為pageno等于1,pagesize等于2。于是,調(diào)用getapplist(1,2)即可生成緩存值。本發(fā)明的一個實施例中,還可以設(shè)置監(jiān)控周期,具體的,根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件。監(jiān)控任務(wù)的周期可以在服務(wù)器的系統(tǒng)設(shè)置頁面中進行調(diào)整,如1秒、5秒、10秒等??梢岳斫獾氖?,監(jiān)控的周期越短,得到變化數(shù)據(jù)越及時,用戶體驗越好,但是也會造成系統(tǒng)的壓力,所以根據(jù)多次經(jīng)驗積累,得到監(jiān)控周日為1秒時,在能夠保證用戶體驗的同時還不會造成太大的系統(tǒng)壓力。進一步地,本發(fā)明還提供了一種計算機可讀存儲介質(zhì)700,參見圖7,應(yīng)用于移動終端,所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序710,所述一個或者多個程序710可被一個或者多個處理器720執(zhí)行,以實現(xiàn)以下步驟:監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件;判斷所述日志文件中是否存在目標(biāo)日志文件,其中,所述目標(biāo)日志文件為具有新增內(nèi)容的日志文件;如果是,解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。進一步地,所述一個或者多個程序710還被所述一個或者多個處理器720執(zhí)行,以實現(xiàn)以下步驟:根據(jù)所述數(shù)據(jù)表的名稱,從緩存鍵關(guān)聯(lián)數(shù)據(jù)哈希表中查詢與所述數(shù)據(jù)表關(guān)聯(lián)的接口列表;根據(jù)所述接口列表,對緩存內(nèi)容進行更新。進一步地,所述一個或者多個程序710還被所述一個或者多個處理器720執(zhí)行,以實現(xiàn)以下步驟:根據(jù)所述接口列表中的接口調(diào)用函數(shù),對緩存內(nèi)容進行更新。進一步地,所述一個或者多個程序710還被所述一個或者多個處理器720執(zhí)行,以實現(xiàn)以下步驟:根據(jù)預(yù)設(shè)監(jiān)控周期,監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件。進一步地,所述一個或者多個程序710還被所述一個或者多個處理器720執(zhí)行,以實現(xiàn)以下步驟:根據(jù)所述數(shù)據(jù)表,獲得待緩存的數(shù)據(jù);將所述待緩存的數(shù)據(jù)放入第一緩存區(qū);刪除所述數(shù)據(jù)表對應(yīng)的原緩存數(shù)據(jù)。相較于現(xiàn)有技術(shù),本發(fā)明所提出的計算機可讀存儲介質(zhì)700,通過監(jiān)控目標(biāo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫對應(yīng)的二進制binlog日志文件,在日志文件中是否存在具有新增內(nèi)容的目標(biāo)日志文件時解析所述目標(biāo)日志文件,并在所述目標(biāo)日志文件至少包含日志寫入、日志刪除和日志更新語句的條件下,解析由于所述目標(biāo)日志文件變化而產(chǎn)生變化的數(shù)據(jù)表;根據(jù)所述數(shù)據(jù)表,對緩存內(nèi)容進行更新。應(yīng)用本發(fā)明實施例,緩存數(shù)據(jù)生成時,能從其讀取數(shù)據(jù)庫的日志中解析得其相關(guān)的數(shù)據(jù)表,從而根據(jù)數(shù)據(jù)包進行緩存的更新,這樣就不需要增加額外代碼來維護緩存更新過程。通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機,計算機,服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備,機器人等)執(zhí)行本發(fā)明各個實施例所述的方法。以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的
技術(shù)領(lǐng)域:
:,均同理包括在本發(fā)明的專利保護范圍內(nèi)。當(dāng)前第1頁12當(dāng)前第1頁12