數據緩存裝置及方法
【技術領域】
[0001]本發(fā)明涉及數據緩存領域,尤其涉及一種數據緩存裝置及方法。
【背景技術】
[0002]目前,通用的數據緩存方案均是將原數據庫中的數據一一映射到緩存數據庫中,采用此種方式將原數據庫中的數據全部映射到緩存數據庫中,不僅占用了極大的內存空間,硬件成本較高,同時采用此種方式將原數據庫中的數據記錄直接映射到緩存數據庫中,使得緩存數據的讀取十分不便,從該緩存數據庫中讀取數據時,需將緩存數據庫中的數據讀取出來,再將其轉換為對象,然后從該對象中取出客戶端所需的數據,最后將取出的數據轉換為字符串發(fā)送給客戶端,需經過兩次數據轉換才能取出客戶端所需的數據,降低了系統(tǒng)效率。因此,現有的數據緩存方式使得緩存數據讀取不便的問題,此方面的問題亟待發(fā)明人解決。
[0003]上述內容僅用于輔助理解本發(fā)明的技術方案,并不代表承認上述內容是現有技術。
【發(fā)明內容】
[0004]本發(fā)明的主要目的在于解決現有的數據緩存方式使得緩存數據讀取不便的問題。
[0005]為實現上述目的,本發(fā)明提供的一種數據緩存裝置,所述數據緩存裝置包括:
[0006]生成模塊,用于在客戶端通過接口讀取數據時,根據所述接口的接口信息生成緩存鍵;
[0007]查找模塊,用于在緩存數據庫中查找所述緩存鍵對應的緩存值;
[0008]存儲模塊,用于若未查找到對應的緩存值,則從原數據庫讀取所述接口對應的數據返回給所述客戶端,并將返回的數據作為所述緩存值保存至所述緩存數據庫。
[0009]優(yōu)選的,所述數據緩存裝置還包括判斷模塊;
[0010]所述判斷模塊,用于若查找到對應的緩存值,則判斷所述緩存值是否有效;
[0011]所述存儲模塊,還用于若有效,則將所述緩存值返回給所述客戶端;
[0012]所述存儲模塊,還用于若無效,則從原數據庫讀取所述接口對應的數據返回給所述客戶端,并用返回的數據替換已無效的緩存值保存至所述緩存數據庫。
[0013]優(yōu)選的,所述判斷模塊包括判斷單元和判定單元;
[0014]所述判斷單元,用于判斷所述緩存值的存儲時間是否達到預設的時間閾值;
[0015]所述判定單元,用于若所述保存時間小于所述時間閾值,則判定所述緩存值有效;
[0016]所述判定單元,用于若所述保存時間大于或等于所述時間閾值,則判定所述緩存值已無效。
[0017]優(yōu)選的,所述存儲模塊包括第一轉換單元、提取單元和第二轉換單元;
[0018]所述第一轉換單元,用于從原數據庫中讀取數據,并將所述原數據庫的數據轉換為對應的對象;
[0019]所述提取單元,用于從所述原數據庫的對象中提取所述接口對應的對象;
[0020]所述第二轉換單元,用于將所提取的對象轉換為所述接口對應的數據,并將所述接口對應的數據返回給所述客戶端。
[0021]優(yōu)選的,所述生成模塊包括確定單元、獲取單元和生成單元;
[0022]所述確定單元,用于在客戶端通過接口讀取數據時,確定所述接口對應的參數類;
[0023]所述獲取單元,用于獲取所述參數類的類名和參數值;
[0024]所述生成單元,用于根據所述類名和所述參數值生成所述接口對應的緩存鍵。
[0025]此外,為實現上述目的,本發(fā)明還提供一種數據緩存方法,所述數據緩存方法包括以下步驟:
[0026]在客戶端通過接口讀取數據時,根據所述接口的接口信息生成緩存鍵;
[0027]在緩存數據庫中查找所述緩存鍵對應的緩存值;
[0028]若未查找到對應的緩存值,則從原數據庫讀取所述接口對應的數據返回給所述客戶端,并將返回的數據作為所述緩存值保存至所述緩存數據庫。
[0029]優(yōu)選的,所述在緩存數據庫中查找所述緩存鍵對應的緩存值的步驟之后,還包括:
[0030]若查找到對應的緩存值,則判斷所述緩存值是否有效;
[0031]若有效,則將所述緩存值返回給所述客戶端;
[0032]若無效,則從原數據庫讀取所述接口對應的數據返回給所述客戶端,并用返回的數據替換已無效的緩存值保存至所述緩存數據庫。
[0033]優(yōu)選的,所述判斷所述緩存值是否有效的步驟包括:
[0034]判斷所述緩存值的存儲時間是否達到預設的時間閾值;
[0035]若所述保存時間小于所述時間閾值,則判定所述緩存值有效;
[0036]若所述保存時間大于或等于所述時間閾值,則判定所述緩存值已無效。
[0037]優(yōu)選的,所述從原數據庫讀取所述接口對應的數據返回給所述客戶端的步驟包括:
[0038]從原數據庫中讀取數據,并將所述原數據庫的數據轉換為對應的對象;
[0039]從所述原數據庫的對象中提取所述接口對應的對象;
[0040]將所提取的對象轉換為所述接口對應的數據,并將所述接口對應的數據返回給所述客戶端。
[0041]優(yōu)選的,所述在客戶端通過接口讀取數據時,根據所述接口的接口信息生成緩存鍵的步驟包括:
[0042]在客戶端通過接口讀取數據時,確定所述接口對應的參數類;
[0043]獲取所述參數類的類名和參數值;
[0044]根據所述類名和所述參數值生成所述接口對應的緩存鍵。
[0045]本發(fā)明根據客戶端讀取數據時調用的接口生成對應的緩存鍵,同時,將所述接口對應的數據作為緩存值保存在緩存數據庫中,采用這種方式進行數據緩存,使得在客戶端調用接口讀取數據時,能夠從緩存數據庫中直接讀取到所述接口對應的數據,避免了將緩存數據庫中的數據轉換為對象以查找所述接口對應數據的數據轉換過程,極大的提高了數據讀取的效率,并提高了系統(tǒng)的運行效率。同時根據客戶端的行為進行對應數據的緩存,避免了將原數據庫中的全部數據映射到緩存數據庫中,減小了占用的內存空間,降低了成本。
【附圖說明】
[0046]圖1為實現本發(fā)明各個實施例的移動終端的硬件結構示意;
[0047]圖2為如圖1所示的移動終端的無線通信系統(tǒng)示意圖;
[0048]圖3為本發(fā)明數據緩存裝置的第一實施例的功能模塊示意圖;
[0049]圖4為本發(fā)明中客戶端讀取緩存數據的效果示意圖;
[0050]圖5為傳統(tǒng)讀取緩存數據的效果示意圖;
[0051]圖6為本發(fā)明數據緩存裝置的第二實施例的功能模塊示意圖;
[0052]圖7為本發(fā)明中判斷模塊的較佳實施例的功能模塊示意圖;
[0053]圖8為本發(fā)明數據緩存裝置的第三實施例的功能模塊示意圖;
[0054]圖9為本發(fā)明數據緩存裝置的第四實施例的功能模塊示意圖;
[0055]圖10為本發(fā)明數據緩存方法的第一實施例的流程示意圖;
[0056]圖11為本發(fā)明數據緩存方法的第二實施例的流程示意圖;
[0057]圖12為本發(fā)明中判斷所述緩存值是否有效的步驟較佳實施例的流程示意圖;
[0058]圖13為本發(fā)明數據緩存方法的第三實施例的流程示意圖;
[0059]圖14為本發(fā)明數據緩存方法的第四實施例的流程示意圖。
[0060]本發(fā)明目的的實現、功能特點及優(yōu)點將結合實施例,參照附圖做進一步說明。
【具體實施方式】
[0061]應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0062]現在將參考附圖描述實現本發(fā)明各個實施例的移動終端。在后續(xù)的描述中,使用用于表示元件的諸如"模塊”、"部件"或"單元"的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,〃模塊〃與〃部件〃可以混合地使用。
[0063]移動終端可以以各種形式來實施。例如,本發(fā)明中描述的終端可以包括諸如移動電話、智能電話、筆記本電腦、數字廣播接收器、PDA(個人數字助理)、PAD(平板電腦)、PMP(便攜式多媒體播放器)、導航裝置等等的移動終端以及諸如數字TV、臺式計算機等等的固定終端。下面,假設終端是移動終端。然而,本領域技術人員將理解的是,除了特別用于移動目的的元件之外,根據本發(fā)明的實施方式的構造也能夠應用于固定類型的終端。
[0064]圖1為實現本發(fā)明各個實施例的移動終端的硬件結構示意。
[0065]移動終端100可以包括無線通信單元110、A/V (音頻/視頻)輸入單元120、用戶輸入單元130、感測單元140、輸出單元150、存儲器160、接口單元170、控制器180和電源單元190等等。圖1示出了具有各種組件的移動終端,但是應理解的是,并不要求實施所有示出的組件??梢蕴娲貙嵤└嗷蚋俚慕M件。將在下面詳細描述移動終端的元件。
[0066]無線通信單元110通常包括一個或多個組件,其允許移動終端100與無線通信系統(tǒng)或網絡之間的無線電通信。例如,無線通信單元可以包括廣播接收模塊111、移動通信模塊112、無線互聯網模塊113、短程通信模塊114和位置信息模塊115中的至少一個。
[0067]廣播接收模塊111經由廣播信道從外部廣播管理服務器接收廣播信號和/或廣播相關信息。廣播信道可以包括衛(wèi)星信道和/或地面信道。廣播管理服務器可以是生成并發(fā)送廣播信號和/或廣播相關信息的服務器或者接收之前生成的廣播信號和/或廣播相關信息并且將其發(fā)送給終端的服務器。廣播信號可以包括TV廣播信號、無線電廣播信號、數據廣播信號等等。而且,廣播信號可以進一步包括與TV或無線電廣播信號組合的廣播信號。廣播相關信息也可以經由移動通信網絡提供,并且在該情況下,廣播相關信息可以由移動通信模塊112來接收。廣播信號可以以各種形式存在,例如,其可以以數字多媒體廣播(DMB)的電子節(jié)目指南(EPG)、數字視頻廣播手持(DVB-Η)的電子服務指南(ESG)等等的形式而存在。廣播接收模塊111可以通過使用各種類型的廣播系統(tǒng)接收信號廣播。特別地,廣播接收模塊111可以通過使用諸如多媒體廣播-地面(DMB-T)、數字多媒體廣播-衛(wèi)星(DMB-S)、數字視頻廣播-手持(DVB-H),前向鏈路媒