新四季網

文件緩存裝置、系統及方法

2023-10-11 21:01:09

文件緩存裝置、系統及方法
【專利摘要】本發明公開了一種文件緩存裝置、系統及方法。其中,該文件緩存裝置包括:接收模塊,用於接收客戶端發送用於從伺服器調用文件數據的調用請求;處理模塊,用於根據調用請求從伺服器下載文件數據,並緩存文件數據。通過本發明,達到了有效地節省開發時間和開發成本的效果。
【專利說明】文件緩存裝置、系統及方法

【技術領域】
[0001]本發明涉及通信領域,具體而言,涉及一種文件緩存裝置、系統及方法。

【背景技術】
[0002]目前,移動終端的發展日新月異,移動終端的類型越來越多,例如,智慧型手機、PDA,以及平板電腦。這些移動終端使用的作業系統也似多種多樣的,例如,蘋果智慧型手機IPhone、蘋果平板電腦IPad等蘋果系列移動終端使用的1S作業系統、以三星智慧型手機等為代表的移動終端使用的安桌(Android)作業系統、以谷歌智慧型手機為代表的移動終端使用的Winphone作業系統。
[0003]移動終端在使用過程中,很多商業應用都涉及到從網絡上讀取圖片數據的問題,為了節約用戶流量,應用客戶端一般會先將圖片緩存起來,各個作業系統的緩存機制是相同的,但是,為了得到相同緩存機制,在不同作業系統下卻需要分別進行開發。這樣以來,增加了開發成本,延長了開發時間。
[0004]針對相關技術中在不同作業系統下開發相同緩存機制的方式導致開發成本過高,開發時間過長的問題,目前尚未提出有效的解決方案。


【發明內容】

[0005]本發明提供了一種文件緩存裝置、系統及方法,以至少解決上述問題。
[0006]根據本發明的一個方面,提供了一種文件緩存裝置,包括:接收模塊,用於接收客戶端發送用於從伺服器調用文件數據的調用請求;處理模塊,用於根據調用請求從伺服器下載文件數據,並緩存文件數據。
[0007]優選地,該文件緩存裝置還包括:計算模塊,用於計算存儲文件數據的預置存儲空間的存儲容量;刪除模塊,用於在已經緩存的文件數據的文件大小超過存儲容量的情況下,對超出部分的文件數據進行刪除。
[0008]優選地,接收模塊和處理模塊中均包括:預置接口規範。
[0009]優選地,預置接口規範包括:客戶端存儲文件數據的名稱和存儲位置。
[0010]優選地,文件緩存裝置能夠適用的作業系統包括:10S系統、Android系統以及Winphone 系統。
[0011]優選地,文件緩存裝置能夠適用的客戶端包括:平板電腦、智慧型手機、筆記本電腦以及桌上型電腦。
[0012]根據本發明的另一個方面,提供了一種文件緩存系統,包括:客戶端,用於向中間連接模塊發送用於從伺服器調用文件數據的調用請求;中間連接模塊,用於接收調用請求,根據調用請求從伺服器下載文件數據,並緩存文件數據;伺服器,用於向中間連接模塊提供文件數據。
[0013]優選地,中間連接模塊能夠被編譯為靜態庫libv8.a或動態庫libv8.so。
[0014]優選地,中間連接模塊包括:setfile接口、vperform接口、getpercentage接口、canceltransf 接 P 以及 resumetransfer 接 P。
[0015]根據本發明的還一個方面,提供了一種文件緩存方法,包括:接收客戶端發送的用於從伺服器調用文件數據的調用請求;根據調用請求從伺服器下載文件數據,並緩存文件數據。
[0016]優選地,在緩存文件數據之後,還包括:計算存儲文件數據的預置存儲空間的存儲容量;在已經緩存的文件數據的文件大小超過存儲容量的情況下,對超出部分的文件數據進行刪除。
[0017]通過本發明,採用在客戶端和伺服器之間增設中間連接模塊,並在中間連接模塊上預置文件數據調用過程中需要用到的接口規範,客戶端通過中間連接模塊調用伺服器上的文件數據的方式,解決了相關技術中在不同作業系統下開發相同緩存機制的方式導致開發成本過高,開發時間過長的問題,進而達到了有效地節省開發時間和開發成本的效果。

【專利附圖】

【附圖說明】
[0018]此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中:
[0019]圖1是根據本發明實施例的文件緩存裝置的結構框圖;
[0020]圖2是根據本發明優選實施例的文件緩存裝置的結構框圖;
[0021]圖3是根據本發明實施例的文件緩存系統的結構示意圖;
[0022]圖4是根據本發明實施例的文件緩存方法流程示意圖;
[0023]圖5是根據本發明優選實施例的客戶端調用中間件的工作過程示意圖;
[0024]圖6是根據本發明優選實施例的文件緩存系統中客戶端、中間件、伺服器進行FTP下載的工作過程示意圖。

【具體實施方式】
[0025]下文中將參考附圖並結合實施例來詳細說明本發明。需要說明的是,在不衝突的情況下,本申請中的實施例及實施例中的特徵可以相互組合。
[0026]本實施例提供了一種文件緩存裝置。圖1是根據本發明實施例的文件緩存裝置的結構框圖,如圖1所示,該裝置可以包括:接收模塊10和處理模塊20。其中,接收模塊10,用於接收客戶端發送用於從伺服器調用文件數據的調用請求;處理模塊20,連接至接收模塊10,用於根據調用請求從伺服器下載文件數據,並緩存文件數據。
[0027]通過上述文件緩存裝置,可以使客戶端直接向該文件緩存裝置發送調用數據的請求,繼而由該文件緩存裝置從伺服器下載到相應的文件後,對文件進行緩存處理,該文件緩存裝置可以適用於多種客戶端和多種作業系統,這樣,可以省去不同的客戶端在使用多作業系統多種語言的情況下,與多平臺不同語言之間的信息交互,避免對接口進行重複定義。
[0028]在實際應用中,可以將該文件緩存裝置設置在客戶端和伺服器之間,以起到中間緩存的作用。當然,可以根據不同的需求進行不同的設置,例如,也可以將該文件緩存裝置分別設置在客戶端和伺服器上。
[0029]在本實施例中,接收模塊10和處理模塊20中均可以包括:預置接口規範。需要說明的是,該預置接口規範中包括統一的內容(為各種作業系統或多種語言均設置了相應的接口規範)優選地,預置接口規範可以包括:客戶端存儲文件數據的名稱和存儲位置。
[0030]優選地,本實施例提供的文件緩存裝置能夠適用的作業系統包括:10S系統、Android系統以及Winphone系統。
[0031]優選地,本實施例提供的文件緩存裝置能夠適用的客戶端包括:平板電腦、智慧型手機、筆記本電腦以及桌上型電腦。
[0032]圖2是根據本發明優選實施例的文件緩存裝置的結構框圖,如圖2所示,該文件緩存裝置還可以包括:計算模塊30,連接至處理模塊20,用於計算存儲文件數據的預置存儲空間的存儲容量;刪除模塊40,連接至計算模塊30,用於在已經緩存的文件數據的文件大小超過存儲容量的情況下,對超出部分的文件數據進行刪除。
[0033]通過該優選實施例,當文件緩存裝置中緩存的文件數據的大小已經達到預置緩存空間的容量時,這就意味著無法再進行更多的文件存儲操作了,因此,在計算模塊30的計算結果超過預置緩存空間的容量了,刪除模塊40就對後續接收到的文件數據進行刪除。
[0034]圖3是根據本發明實施例的文件緩存系統的結構示意圖,如圖3所示,該文件緩存系統可以包括:客戶端,用於向中間連接模塊發送用於從伺服器調用文件數據的調用請求;中間連接模塊,用於接收調用請求,根據調用請求從伺服器下載文件數據,並緩存文件數據;伺服器,用於向中間連接模塊提供文件數據。
[0035]在該文件緩存系統中,中間連接模塊其實就相當於上述文件緩存裝置,二者的功能可以是相同的。
[0036]在本實施例中,中間連接模塊能夠被編譯為靜態庫libv8.a或動態庫libv8.so。
[0037]優選地,中間連接模塊可以包括:setfile接口、vperform接口、getpercentage接P、canceltransf 接 P 以及 resumetransfer 接 P。
[0038]圖4是根據本發明實施例的文件緩存方法流程示意圖,如圖4所示,該文件緩存方法包括以下步驟(步驟S402-步驟S404):
[0039]步驟S402,接收客戶端發送的用於從伺服器調用文件數據的調用請求;
[0040]步驟S404,根據調用請求從伺服器下載文件數據,並緩存文件數據。
[0041]在本實施例中,在執行步驟S404之後,還可以計算存儲文件數據的預置存儲空間的存儲容量;在已經緩存的文件數據的文件大小超過存儲容量的情況下,對超出部分的文件數據進行刪除。
[0042]採用上述實施例提供的文件緩存裝置、系統及方法,可以解決相關技術中在不同作業系統下開發相同緩存機制的方式導致開發成本過高,開發時間過長的問題,進而達到了有效地節省開發時間和開發成本的效果。
[0043]下面結合圖5和圖6以及優選實施例對上述實施例提供的文件緩存裝置、系統及方法進行更進一步的描述。
[0044]本優選實施例的提出的思路是設置一個中間連接模塊(功能與上述文件緩存裝置,為描述方便,以下簡稱中間件),中間件主要負責數據包(json)和文件的下載和緩存。通過該中間件可以做到根據客戶端作業系統的不同,將該中間件編譯為靜態庫(libv8.a)或動態庫(libv8.so),同時定義一套接口規範,供客戶端調用。客戶端通過調用中間件的方法,獲取伺服器數據包或文件,中間件下載數據包和文件後,對文件進行緩存處理。
[0045]通過這種方式,可以省去配置有多作業系統不同語言的客戶端與多平臺不同語言之間的通信交互,接口的重複定義,避免代碼的重複開發,客戶端不用再進行本地文件的緩存處理。而且,從整體技術構架方面講,降低了代碼耦合度,從開發成本方面講,大大節約開發的時間和成本。
[0046]在本優選實施例中,客戶端可以直接向中間件發送調用請求,以下將對客戶端調用中間件的工作過程進行描述,圖5是根據本發明優選實施例的客戶端調用中間件的工作過程示意圖,該過程如下:
[0047](I)初始化中間件(初始化方法:VPACK createvpack(void));
[0048](2)設定數據包(調用方法:int setvpack(VPACK p, VPACK_MEMBp_memb, memb_value));
[0049](3)設定文件下載參數(int setvfile (VPACK p, string lfp, string lfn, stringrfp, string rfn, vintdir, vint fnew));
[0050](4)設定同時請求給中間件,中間件用vperform方法,與平臺通信,平臺返回中間件文件的FTP(File Transfer P72872rotocol,文件傳輸協議)地址,中間件調用下載模塊,將文件存入客戶端指定位置(客戶端在請求時設定好的位置IfP);
[0051](5)客戶端調用中間件緩存處理接口,緩存接口包括參數(手動自動設置、緩存大小設置、緩存文件類型設置);
[0052](6)中間件根據設置對文件和數據進行處理。
[0053]為了更加詳細地了解該文件或數據的下載過程和對下載的文件數據進行緩存的過程,這裡可以參考圖6,圖6是根據本發明優選實施例的文件緩存系統中客戶端、中間件、伺服器進行FTP下載的工作過程示意圖,以下對客戶端調用中間件的工作過程進行描述,其中還介紹中間件的各個接口的功能。該工作過程如下:
[0054](I)客戶端調用 setvf ile 接口 ;
[0055]int setvfile(VPACK p, string lfp, string lfn, string rfp, string rfn, vintdir,vint fnew)
[0056]其中,setvfile接口的參數說明:
[0057]VPACK p; //
[0058]string lfp; //本地文件路徑
[0059]string lfn; //本地文件名稱
[0060]string rfp; //遠程文件路徑
[0061]string rfn; //遠程文件名稱
[0062]vint dir; //上傳或下載標誌
[0063]vint fnew; //是否斷點續傳標誌
[0064]setvfile接口的功能說明:設置文件傳輸屬性,包括本地文件路徑,ftp上傳路徑;如果上傳/下載多個文件,需多次調用setvfile。
[0065]其中,FTP的上傳路徑由接口文檔約定規則。
[0066](2)中間件setvfile接口判斷文件屬性;
[0067]其中,setvfile接口的功能說明:
[0068]判定文件是否存在,如果不存在,返回錯誤;
[0069]判定是否允許斷點續傳,分支如下:
[0070]允許斷點續傳,則判定文件是否有變化,分支如下:
[0071]無變化,設置fnew屬性為續傳文件;
[0072]有變化,設置fnew屬性為不續傳文件;
[0073]不允許斷點續傳,設置fnew屬性為不續傳文件。
[0074]返回操作是否成功。
[0075](3)客戶端調用 vperform 接口;
[0076]Int vperform(int sd, VPACK sendp, VPACK recvp, int (*pCBperform)(int n, intstat));
[0077]其中,vperform接口的參數說明:
[0078]Int sd //
[0079]VPACK sendp //
[0080]VPACK recvp //
[0081]int(*pCBperform) (int n, int stat)//
[0082]其中,vperform接口的功能說明:傳輸文件,根據接收到的傳輸報告,進行下一步操作;(4)中間件vperform接口負責文件的上傳或下載;
[0083]其中,vperform接口的功能說明:
[0084]主線程,向平臺發送json請求包,接收平臺返回值,轉發給客戶端;
[0085]讀取vfile鍊表,每個vfile創建一個子線程,啟動文件上傳/下載;
[0086]獲得每個文件上傳/下載進度,寫入對應的vflie中;
[0087]所有文件傳輸完,將文件傳輸報告分別發送給平臺與客戶端。
[0088](5)中間件getpercentage接口反饋文件傳輸速度;
[0089]int getpercentage(VPACK p,int η);
[0090]其中,getpercentage接口的參數說明:
[0091]VPACK p; //
[0092]Int η; //
[0093]其中,getpercentage接口的功能說明:返回第η個文件的傳輸進度。
[0094](6)中間件canceltransf接口控制文件傳輸;
[0095]int canceltransfer (VPACK p,int n,int bpc)
[0096]其中,canceltransf接口的參數說明:
[0097]VPACK p; //
[0098]Int η; //
[0099]Int bpc; //
[0100]其中,canceltransf接口的功能說明:取消或暫停文件傳輸,參數bpc控制是否暫停:
[0101]如果是暫停,記錄斷點;
[0102]如果不是暫停,不記錄斷點,刪除已傳輸文件。
[0103](7)中間件 resumetransfer 接口續傳文件;
[0104]int resumetransfer(VPACK p,int n, int(*pCBresume)(int n,int stat));
[0105]其中,resumetransfer接口的參數說明:
[0106]VPACK p; Il
[0107]Int η; //
[0108]int(*pCBresume)(int n, int stat); //
[0109]其中,resumetransfer接口的功能說明:續傳文件,文件傳輸完成,回調函數被調用。
[0110](8)平臺接收josn包,返回處理結果;
[0111](9)中間件調用cache接口判斷緩存數據大小,按時間清除數據。
[0112]通過本優選實施例,在客戶端開發過程中調用的庫可以省去了許多語言和平臺通信交互轉換時的重複步驟,例如,開發編寫代碼只消耗了很少的時間,但是在終端與平臺進行功能聯調和代碼對接時卻往往會比開發的時間長很多,而加入本優選實施例提供的中間件後,可以更有效的節省開發時間和成本。
[0113]從以上的描述中,可以看出,本發明實現了如下技術效果:採用在客戶端和伺服器之間增設中間連接模塊,並在中間連接模塊上預置文件數據調用過程中需要用到的接口規範,客戶端通過中間連接模塊調用伺服器上的文件數據的方式,解決了相關技術中在不同作業系統下開發相同緩存機制的方式導致開發成本過高,開發時間過長的問題,進而達到了有效地節省開發時間和開發成本的效果。
[0114]顯然,本領域的技術人員應該明白,上述的本發明的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,並且在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟,或者將它們分別製作成各個集成電路模塊,或者將它們中的多個模塊或步驟製作成單個集成電路模塊來實現。這樣,本發明不限制於任何特定的硬體和軟體結合。
[0115]以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種文件緩存裝置,其特徵在於,包括: 接收模塊,用於接收客戶端發送用於從伺服器調用文件數據的調用請求; 處理模塊,用於根據所述調用請求從所述伺服器下載文件數據,並緩存所述文件數據。
2.根據權利要求1所述的裝置,其特徵在於,所述文件緩存裝置還包括: 計算模塊,用於計算存儲所述文件數據的預置存儲空間的存儲容量; 刪除模塊,用於在已經緩存的文件數據的文件大小超過所述存儲容量的情況下,對超出部分的文件數據進行刪除。
3.根據權利要求1所述的裝置,其特徵在於,所述接收模塊和所述處理模塊中均包括:預置接口規範。
4.根據權利要求3所述的裝置,其特徵在於,所述預置接口規範包括:所述客戶端存儲文件數據的名稱和存儲位置。
5.根據權利要求1至4中任一項所述的裝置,其特徵在於,所述文件緩存裝置能夠適用的作業系統包括=1S系統、Android系統以及Winphone系統。
6.根據權利要求1至4中任一項所述的裝置,其特徵在於,所述文件緩存裝置能夠適用的客戶端包括:平板電腦、智慧型手機、筆記本電腦以及桌上型電腦。
7.一種文件緩存系統,其特徵在於,包括: 客戶端,用於向中間連接模塊發送用於從伺服器調用文件數據的調用請求; 所述中間連接模塊,用於接收所述調用請求,根據所述調用請求從所述伺服器下載文件數據,並緩存所述文件數據; 所述伺服器,用於向所述中間連接模塊提供所述文件數據。
8.根據權利要求7所述的系統,其特徵在於,所述中間連接模塊能夠被編譯為靜態庫libv8.a 或動態庫 libv8.so。
9.根據權利要求7或8所述的系統,其特徵在於,所述中間連接模塊包括:setfile接P、vperform 接 Π、getpercentage 接 Π、canceltransf 接 P 以及 resumetransfer 接 P。
10.一種文件緩存方法,其特徵在於,包括: 接收客戶端發送的用於從伺服器調用文件數據的調用請求; 根據所述調用請求從所述伺服器下載文件數據,並緩存所述文件數據。
11.根據權利要求10所述的方法,其特徵在於,在緩存所述文件數據之後,還包括: 計算存儲所述文件數據的預置存儲空間的存儲容量; 在已經緩存的文件數據的文件大小超過所述存儲容量的情況下,對超出部分的文件數據進行刪除。
【文檔編號】G06F17/30GK104252513SQ201310557530
【公開日】2014年12月31日 申請日期:2013年11月11日 優先權日:2013年11月11日
【發明者】楊勇, 田強, 馬寧 申請人:新華瑞德(北京)網絡科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀