两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種文件緩存方法、裝置和系統(tǒng)的制作方法

文檔序號:7981609閱讀:214來源:國知局
一種文件緩存方法、裝置和系統(tǒng)的制作方法
【專利摘要】本申請公開了一種文件緩存方法和裝置。該方法包括:根據(jù)緩存模塊的存儲空間容量,遍歷占用的存儲空間不大于緩存模塊的存儲空間的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的文件集合;將選出的文件集合中的各個文件存儲在所述緩存模塊中。應(yīng)用本申請能夠提高緩存模塊的利用率。
【專利說明】一種文件緩存方法、裝置和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請涉及互聯(lián)網(wǎng)【技術(shù)領(lǐng)域】,尤其涉及一種文件緩存方法、裝置和系統(tǒng)。
【背景技術(shù)】
[0002]在內(nèi)容發(fā)布系統(tǒng)中,文件一般會分布式地存儲在多臺存儲設(shè)備上,當(dāng)用戶訪問接入服務(wù)器時,接入服務(wù)器會從后臺的存儲設(shè)備中獲取文件數(shù)據(jù)返回給用戶。如果某個劇集正在熱播、某個名人上傳了視頻、或者有重要新聞發(fā)布的時候,一個或多個文件就會有很高的關(guān)注度,導(dǎo)致在接入服務(wù)器上訪問的頻率非常高,這樣就形成了熱點(diǎn)文件。對于這些熱點(diǎn)文件,如果接入服務(wù)器每次都需要重新從后臺存儲設(shè)備中獲取文件數(shù)據(jù),將給后臺的存儲設(shè)備帶來巨大的壓力。
[0003]目前,通過在接入服務(wù)器中設(shè)置緩存模塊緩存熱點(diǎn)文件來解決上述問題。
[0004]具體地,目前在接入服務(wù)器中緩存熱點(diǎn)文件的方法為:判斷文件的訪問次數(shù)是否高于預(yù)設(shè)閾值,如果是,則將該文件記錄為熱點(diǎn)文件,否則,確定該文件不是熱點(diǎn)文件,然后按照熱點(diǎn)文件的訪問次數(shù)由高到低的順序,依次將各個熱點(diǎn)文件緩存到所述緩存模塊中,直至緩存模塊中無法容納下一熱點(diǎn)文件為止。
[0005]可見,目前僅僅根據(jù)文件的訪問次數(shù)來確定是否緩存該文件,方法過于簡單,常常會導(dǎo)致緩存模塊的利用率較低。
[0006]例如,假設(shè)緩存模塊的容量是20M,當(dāng)前訪問次數(shù)最高的3個文件分別為:文件A,大小是15M,訪問次數(shù)是20次;文件B,大小是12M,訪問次數(shù)是15次;文件C,大小是7M,訪問次數(shù)是10次。按照目前的方法,在緩存模塊中將僅能緩存文件A,則緩存模塊中有5M的空間沒有得到利用,其能夠減少對后臺存儲設(shè)備的訪問次數(shù)也僅為20次,而如果將文件B和文件C緩存在緩存模塊中,該緩存模塊中將僅有IM的空間空閑,并且能夠減少對后臺存儲設(shè)備的訪問次數(shù)也將達(dá)到25次。

【發(fā)明內(nèi)容】

[0007]本申請?zhí)峁┝艘环N文件緩存方法和裝置,能夠提高緩存模塊的利用率。
[0008]一種文件緩存方法,該方法包括:
[0009]根據(jù)緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合,
[0010]比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之加權(quán)和最大的最優(yōu)文件集合;
[0011 ] 將所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中。
[0012]一種文件緩存裝置,該裝置包括選擇模塊和寫入模塊;
[0013]所述選擇模塊,用于根據(jù)緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的最優(yōu)文件集合;
[0014]所述寫入模塊,將所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中。
[0015]一種系統(tǒng),包括存儲設(shè)備、接入服務(wù)器和客戶端,
[0016]所述存儲設(shè)備,用于存儲文件;
[0017]所述接入服務(wù)器,用于根據(jù)其緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之加權(quán)和最大的最優(yōu)文件集合;將存儲設(shè)備中的所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中;
[0018]所述客戶端從所述接入服務(wù)器的所述緩存模塊中讀取其緩存的文件。
[0019]由上述方案可見,本申請?jiān)诖_定需要將哪些文件存儲在緩存模塊中時,不是僅僅根據(jù)文件的訪問次數(shù)來確定是否緩存該文件,而是綜合考慮緩存模塊的存儲空間容量和文件自身的訪問次數(shù)和/或訪問容量,從而使得在選出的若干個文件占用的存儲空間不大于緩存模塊的存儲空間的前提下,該若干個文件的訪問次數(shù)之和、和/或訪問流量之和能夠滿足預(yù)定條件,由于考慮的因素較為全面,因此,能夠提高緩存模塊的利用率。
【專利附圖】

【附圖說明】
[0020]圖1是本發(fā)明提供的文件緩存方法流程圖。
[0021]圖2是本發(fā)明提供的選擇文件集合的第一方法流程圖。
[0022]圖3是本發(fā)明提供的選擇文件集合的第二方法流程圖。
[0023]圖4是本發(fā)明提供的文件緩存裝置結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0024]圖1是本發(fā)明提供的文件緩存方法流程圖。
[0025]如圖1所示,該方法包括:
[0026]步驟101,根據(jù)緩存模塊的存儲空間容量、以及需要緩存的文件集合中各個文件的訪問次數(shù)和/或訪問流量,從需要緩存的文件集合中選擇若干個文件,使得該若干個文件占用的存儲空間不大于緩存模塊的存儲空間,且該若干個文件的訪問次數(shù)之和、和/或訪問流量之和滿足預(yù)定條件。
[0027]其中,可以通過分析用戶的訪問日志,獲得文件的訪問次數(shù)和/或訪問流量。
[0028]步驟102,將選出的該若干個文件存儲在所述緩存模塊中。
[0029]其中,本申請從需要緩存的文件集合中選出的若干個文件的訪問次數(shù)之和、和/或訪問流量之和所滿足的預(yù)定條件具體可以包括:
[0030]該若干個文件的訪問次數(shù)之和最大;或者該若干個文件的訪問流量最大;或者該若干個文件的訪問次數(shù)之和與訪問流量之和的加權(quán)和最大;或者該若干個文件的訪問次數(shù)之和、訪問流量之和、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和,在與占用的存儲空間容量不大于所述緩存模塊的存儲空間容量其他若干個文件的訪問次數(shù)之和、訪問流量之和、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和相同時,該若干個文件占用的存儲空間容量小于該其他若干個文件占用的存儲空間容量。
[0031]其中,從需要緩存的文件集合中選擇若干個文件具體可以包括:
[0032]遍歷占用的存儲空間不大于緩存模塊的存儲空間的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的文件集合,將選出的該文件集合中的所有文件確定為從需要緩存的文件集合中選出的所述若干個文件,其中,所述文件集合是從所述需要緩存的文件集合中選出的子集。將選出的文件集合中的各個文件存儲在所述緩存模塊中。
[0033]其中遍歷占用的存儲空間不大于緩存模塊的存儲空間的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的文件集合、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和、和/或訪問流量之和滿足預(yù)定條件的文件集合的具體實(shí)現(xiàn)過程,可以有多種實(shí)現(xiàn)方式,下面舉兩個例子進(jìn)行示例性說明,所舉例子不用于限制本發(fā)明。
[0034]圖2是本發(fā)明提供的選擇文件集合的第一方法流程圖。
[0035]如圖2所示,該方法包括:
[0036]步驟201,遍歷需要緩存的文件集合中的每個文件,對于遍歷到的每個文件,以緩存模塊的存儲空間的容量大小作為起點(diǎn),按照容量由大到小的順序遍歷各個存儲空間容量,對于當(dāng)前遍歷到的存儲空間容量和當(dāng)前遍歷到的文件,執(zhí)行步驟202。
[0037]本步驟中,判斷對于需要緩存的文件集合中的每個文件,是否已遍歷完步驟201所述的各個存儲空間容量,如果是,進(jìn)入步驟210,否則,更新當(dāng)前遍歷到的文件和存儲空間容量,并進(jìn)入步驟202。
[0038]步驟202,比較當(dāng)前遍歷到的存儲空間容量的解的訪問次數(shù)與當(dāng)前遍歷到的文件的訪問次數(shù)之和、或者該解的訪問流量與當(dāng)前遍歷到的文件的訪問流量之和、或者所述訪問次數(shù)之和與所述訪問流量之和的加權(quán)和,是否大于當(dāng)前遍歷到的存儲空間容量和當(dāng)前遍歷到的文件占用的存儲空間容量之和的解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,在大于時,執(zhí)行步驟203,在不大于時,執(zhí)行步驟204。
[0039]步驟203,更新當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息,其中,所述更新包括:將當(dāng)前遍歷到的文件加入到該解的文件集合中,并更新該解的訪問次數(shù)和訪問流量,進(jìn)入步驟205。
[0040]步驟204,保持當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息不變。
[0041]步驟205,比較當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,是否大于所述緩存模塊的最優(yōu)解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,在大于時,執(zhí)行步驟206,在當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,與所述緩存模塊的最優(yōu)解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和相等時,進(jìn)入步驟 207。[0042]步驟206,將所述緩存模塊的最優(yōu)解信息更新為當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息,返回步驟201判斷對于需要緩存的文件集合中的每個文件,是否已遍歷完步驟201所述的各個存儲空間容量,如果是,進(jìn)入步驟210,否則,更新當(dāng)前遍歷到的文件和存儲空間容量,并進(jìn)入步驟202。
[0043]其中,每個存儲空間容量的解的初始化信息、和所述緩存模塊的最優(yōu)解的初始化信息能夠被占用的存儲空間容量不大于緩存模塊的存儲空間容量的任意文件集合的信息更新,例如,可以將最優(yōu)解的初始化信息設(shè)置為訪問次數(shù)為O、訪問流量也為O。
[0044]步驟207,比較當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和是否小于所述緩存模塊的最優(yōu)解的文件集合所占用的存儲空間容量,如果小于,則執(zhí)行步驟208,否則,執(zhí)行步驟209。
[0045]步驟208,將所述緩存模塊的最優(yōu)解信息更新為當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息,返回步驟201判斷對于需要緩存的文件集合中的每個文件,是否已遍歷完步驟201所述的各個存儲空間容量,如果是,進(jìn)入步驟210,否則,更新當(dāng)前遍歷到的文件和存儲空間容量,并進(jìn)入步驟202。
[0046]步驟209,保持所述緩存模塊的最優(yōu)解信息不變,返回步驟201判斷對于需要緩存的文件集合中的每個文件,是否已遍歷完步驟201所述的各個存儲空間容量,如果是,進(jìn)入步驟210,否則,更新當(dāng)前遍歷到的文件和存儲空間容量,并進(jìn)入步驟202。
[0047]步驟210,將所述緩存模塊的最優(yōu)解的文件集合作為選出的需要存儲在緩存模塊中的文件集合。
[0048]圖3是本發(fā)明提供的選擇文件集合的第二方法流程圖。
[0049]如圖3所示,該方法包括:
[0050]步驟301,遍歷需要緩存的文件集合中的每個文件,判斷需要緩存的文件集合中所有文件是否都已遍歷完畢,如果是,進(jìn)入步驟306,否則,對于當(dāng)前遍歷到的文件,進(jìn)入步驟302。
[0051]步驟302,基于當(dāng)前遍歷到的文件,逐個加入需要緩存的文件集合中的其他文件組成當(dāng)前文件集合,并在每加入一個文件后,判斷當(dāng)前文件集合占用的存儲空間是否大于所述緩存模塊的存儲空間,如果大于,則執(zhí)行步驟303,如果不大于,執(zhí)行步驟304。
[0052]步驟303,停止向當(dāng)前文件集合中加入其它文件,并將從當(dāng)前文件集合中刪除最后一次加入的文件所得到的文件集合,確定為當(dāng)前遍歷到的文件對應(yīng)的最優(yōu)文件集合,返回步驟301。
[0053]步驟304,判斷需要緩存的文件集合中的文件是否已全部加入到當(dāng)前文件集合中,如果是,執(zhí)行步驟305,否則,返回步驟302。
[0054]步驟305,將需要緩存的文件集合確定為需要緩存的文件集合中的每個文件對應(yīng)的最優(yōu)文件集合,返回步驟301。
[0055]步驟306,比較需要緩存的文件集合中的每個文件對應(yīng)的最優(yōu)文件集合的訪問次數(shù)和/或訪問流量,選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的最優(yōu)文件集合。
[0056]步驟307,將選出的最優(yōu)文件集合作為選出的需要存儲在緩存模塊中的文件集合,換言之,將選出的最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中。[0057]其中,本發(fā)明所述的需要緩存的文件集合,可以是被訪問的所有文件的集合。為了提高從需要緩存的文件集合中選擇所述若干個文件的效率,所述需要緩存的文件集合可以是訪問次數(shù)和/或訪問流量滿足預(yù)定條件的文件的集合,換言之,先根據(jù)所有被訪問的文件的訪問次數(shù)和/或訪問流量,篩選出需要緩存的文件集合,然后再從需要緩存的文件集合中選出所述若干個文件。
[0058]根據(jù)本發(fā)明提供的上述方法,本發(fā)明還提供了相應(yīng)的裝置,具體請參見圖2。
[0059]圖4是本發(fā)明提供的文件緩存裝置結(jié)構(gòu)圖。
[0060]如圖4所示,該裝置包括選擇模塊401和寫入模塊402。
[0061]選擇模塊401,用于根據(jù)緩存模塊的存儲空間容量,遍歷占用的存儲空間不大于緩存模塊的存儲空間的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的文件集合。
[0062]寫入模塊402,將選出的文件集合中的各個文件存儲在所述緩存模塊中。
[0063]其中,選擇模塊401可以包括遍歷模塊、第一比較模塊、第一更新模塊、第二比較模塊和第二更新模塊。
[0064]所述遍歷模塊,用于遍歷需要緩存的文件集合中的每個文件,對于遍歷到的每個文件,以緩存模塊的存儲空間的容量大小作為起點(diǎn),按照容量由大到小的順序遍歷各個存儲空間容量。
[0065]所述第一比較模塊,用于比較當(dāng)前遍歷到的存儲空間容量的解的訪問次數(shù)與當(dāng)前遍歷到的文件的訪問次數(shù)之和、或者該解的訪問流量與當(dāng)前遍歷到的文件的訪問流量之和、或者所述訪問次數(shù)之和與所述訪問流量之和的加權(quán)和,是否大于當(dāng)前遍歷到的存儲空間容量和當(dāng)前遍歷到的文件占用的存儲空間容量之和的解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,在大于時,向第一更新模塊發(fā)送第一更新通知,在不大于時,向第一更新模塊發(fā)送保持通知。
[0066]第一更新模塊,用于接收第一更新通知,更新當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息,其中,所述更新包括:將當(dāng)前遍歷到的文件加入到該解的文件集合中,并更新該解的訪問次數(shù)和訪問流量,接收保持通知,保持當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息不變。
[0067]所述第二比較模塊,用于比較當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,是否大于所述緩存模塊的最優(yōu)解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,在大于時,向第二更新模塊發(fā)送第二更新通知。
[0068]所述第二更新模塊,用于接收第二更新通知,將所述緩存模塊的最優(yōu)解信息更新為當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解信息。
[0069]其中,每個存儲空間容量的解的初始化信息、和所述緩存模塊的最優(yōu)解的初始化信息能夠被占用的存儲空間容量不大于緩存模塊的存儲空間容量的任意文件集合的信息更新。
[0070]寫入模塊402,用于將所述緩存模塊的最優(yōu)解的文件集合存儲在緩存模塊中。
[0071]其中,所述第二比較模塊,可以用于在當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和的解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和,與所述緩存模塊的最優(yōu)解的訪問次數(shù)、或者訪問流量、或者訪問次數(shù)與訪問流量的加權(quán)和相等時,比較當(dāng)前遍歷到的存儲空間容量與當(dāng)前遍歷到的文件占用的存儲空間容量之和是否小于所述緩存模塊的最優(yōu)解的文件集合所占用的存儲空間容量,在小于時,向第二更新模塊發(fā)送第二更新通知,在不小于時,向第二更新模塊發(fā)送保持通知。
[0072]所述第二更新模塊,還用于接收保持通知,保持所述緩存模塊的最優(yōu)解信息不變。
[0073]選擇模塊401可以包括遍歷模塊、確定模塊和比較模塊。
[0074]所述遍歷模塊,用于遍歷需要緩存的文件集合中的每個文件。
[0075]所述確定模塊,用于基于所述遍歷模塊當(dāng)前遍歷到的文件,逐個加入需要緩存的文件集合中的其他文件組成當(dāng)前文件集合,并在每加入一個文件后,判斷當(dāng)前文件集合占用的存儲空間是否大于所述緩存模塊的存儲空間,直至判斷結(jié)果為大于時,停止向當(dāng)前文件集合中加入其它文件,并將從當(dāng)前文件集合中刪除最后一次加入的文件所得到的文件集合,確定為當(dāng)前遍歷到的文件對應(yīng)的最優(yōu)文件集合,或者直至當(dāng)前文件集合等于需要緩存的文件集合、且需要緩存的文件集合占用的存儲空間不大于所述緩存模塊的存儲空間時,將需要緩存的文件集合確定為需要緩存的文件集合中的每個文件對應(yīng)的最優(yōu)文件集合。
[0076]所述比較模塊,用于比較需要緩存的文件集合中的每個文件對應(yīng)的最優(yōu)文件集合的訪問次數(shù)和/或訪問流量,選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的最優(yōu)文件集合。
[0077]寫入模塊402,用于將所述比較模塊選出的最優(yōu)文件集合存儲在所述緩存模塊中。
[0078]其中,所述需要緩存的文件集合是被訪問的所有文件的集合,或者,所述需要緩存的文件集合是訪問次數(shù)和/或訪問流量大于預(yù)定值或者排在前預(yù)定數(shù)目位的文件的集合。
[0079]其中,所述裝置還可以包括接收模塊,用于接收需要緩存的文件集合,所述需要緩存的文件集合可以是被訪問的所有文件的集合,或者,所述需要緩存的文件集合可以是訪問次數(shù)和/或訪問流量滿足預(yù)定條件的文件的集合。
[0080]或者,所述裝置可以包括需要緩存的集合確定模塊,用于獲取被訪問的所有文件的集合,將該被訪問的所有文件的集合確定為需要緩存的文件集合,或者用于獲取訪問次數(shù)和/或訪問流量滿足預(yù)定條件的集合,將該訪問次數(shù)和/或訪問流量滿足預(yù)定條件的集合確定為需要緩存的文件集合。
[0081]其中,選擇模塊401可以按照存儲空間容量從大到小或者從小到大遍歷各個緩存模塊,遍歷得到各個緩存模塊的最優(yōu)文件集合后,寫入模塊402可以將各個最優(yōu)文件集合存儲到對應(yīng)的各個緩存模塊中。
[0082]其中,選擇模塊401遍歷需要緩存的文件,所述需要緩存的文件的任意集合構(gòu)成所述文件集合。
[0083]本發(fā)明所提供的上述方法和裝置,可以用于多種場景中,例如,可以應(yīng)用在在接入服務(wù)器中緩存熱點(diǎn)文件,從而避免接入服務(wù)器頻繁地到后臺存儲設(shè)備中拉取熱點(diǎn)文件的場景中,從而降低了后臺存儲設(shè)備的負(fù)擔(dān),也提高了熱點(diǎn)文件的訪問速度。
[0084]本發(fā)明還提供了一種系統(tǒng),該系統(tǒng)包括存儲設(shè)備、接入服務(wù)器和客戶端。
[0085]所述存儲設(shè)備,用于存儲文件。
[0086]所述接入服務(wù)器,用于根據(jù)其緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之加權(quán)和最大的最優(yōu)文件集合;將存儲設(shè)備中的所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中。
[0087]所述客戶端從所述接入服務(wù)器的所述緩存模塊中讀取其緩存的文件。
[0088]其中,所述接入服務(wù)器按照存儲空間容量從大到小或者從小到大遍歷其各個緩存模塊,遍歷得到各個緩存模塊的最優(yōu)文件集合后,將各個最優(yōu)文件集合存儲到對應(yīng)的各個緩存模塊中。
[0089]由于本發(fā)明的技術(shù)方案在確定將哪些文件存儲在緩存模塊中時,綜合考慮了緩存模塊的存儲空間容量以及文件的訪問次數(shù)和/或訪問流量信息,因此,能夠最大化利用緩存模塊有限的存儲空間,存儲最需要緩存的文件數(shù)據(jù),從而提高緩存模塊中文件的命中率,使得緩存模塊的利用率得以提高。
[0090]繼續(xù)本發(fā)明【背景技術(shù)】部分的例子,如果采用本發(fā)明提供的技術(shù)方案,無論是采用圖2所示選擇文件集合的方法,還是圖3所示選擇文件集合的方法,都將選出文件B和文件C,在緩存模塊中存儲文件B和文件C,從而提高了緩存模塊的利用率。
【權(quán)利要求】
1.一種文件緩存方法,其特征在于,該方法包括: 根據(jù)緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合, 比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之加權(quán)和最大的最優(yōu)文件集合; 將所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,按照存儲空間容量從大到小或者從小到大遍歷各個緩存模塊,遍歷得到各個緩存模塊的最優(yōu)文件集合后,將各個最優(yōu)文件集合存儲到對應(yīng)的各個緩存模塊中。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,遍歷需要緩存的文件,所述需要緩存的文件的任意集合構(gòu)成所述文件集合。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,需要緩存的文件包括被訪問的文件,或者,訪問次數(shù)和/或訪問流量大于預(yù)定值的文件,或者,訪問次數(shù)和/或訪問流量排在前預(yù)定數(shù)目位的文件。
5.根據(jù)權(quán)利要求3或4所述的方法,其特征在于,所述需要緩存的文件包括多媒體文件。
6.一種文件緩存裝置,其特征在于,該裝置包括選擇模塊和寫入模塊; 所述選擇模塊,用于根據(jù)緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之和的加權(quán)和最大的最優(yōu)文件集合; 所述寫入模塊,將所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述選擇模塊按照存儲空間容量從大到小或者從小到大遍歷各個緩存模塊,遍歷得到各個緩存模塊的最優(yōu)文件集合后,所述寫入模塊將各個最優(yōu)文件集合存儲到對應(yīng)的各個緩存模塊中。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述選擇模塊遍歷需要緩存的文件,所述需要緩存的文件的任意集合構(gòu)成所述文件集合。
9.一種系統(tǒng),包括存儲設(shè)備、接入服務(wù)器和客戶端,其特征在于: 所述存儲設(shè)備,用于存儲文件; 所述接入服務(wù)器,用于根據(jù)其緩存模塊的存儲空間容量,遍歷占用的存儲空間容量之和不大于緩存模塊的存儲空間容量的文件集合,比較遍歷到的各個文件集合的訪問次數(shù)之和、和/或訪問流量之和,根據(jù)比較結(jié)果選出訪問次數(shù)之和最大、或者訪問流量之和最大、或者訪問次數(shù)之和與訪問流量之加權(quán)和最大的最優(yōu)文件集合;將存儲設(shè)備中的所述最優(yōu)文件集合中的各個文件存儲在所述緩存模塊中; 所述客戶端從所述接入服務(wù)器的所述緩存模塊中讀取其緩存的文件。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述接入服務(wù)器按照存儲空間容量從大到小或者從小到大遍歷其各個緩存模塊,遍歷得到各個緩存模塊的最優(yōu)文件集合后,將各個最優(yōu)文件集合存儲到對應(yīng)的各個緩存模塊中。
【文檔編號】H04L12/861GK103581051SQ201210272276
【公開日】2014年2月12日 申請日期:2012年8月2日 優(yōu)先權(quán)日:2012年8月2日
【發(fā)明者】馮鋒 申請人:深圳市騰訊計(jì)算機(jī)系統(tǒng)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
家居| 柏乡县| 日喀则市| 五大连池市| 濮阳县| 沛县| 伊川县| 太保市| 道孚县| 三亚市| 鹿邑县| 铁岭市| 林周县| 苍山县| 泰兴市| 华坪县| 庄河市| 平原县| 安塞县| 汪清县| 惠安县| 扶沟县| 宁明县| 金阳县| 名山县| 松桃| 肃北| 林西县| 霍邱县| 南汇区| 砀山县| 闸北区| 汝阳县| 炎陵县| 天柱县| 焦作市| 剑河县| 阳西县| 吉安市| 阿城市| 综艺|